مرجع کلاس GMSNavigator


بررسی اجمالی

این کلاس اصلی Google Navigation SDK برای iOS است و روش هایی را برای کنترل ناوبری به مقصد و دسترسی به اطلاعات مسیر و پیشرفت ارائه می دهد.

این کلاس از طبقه بندی فرعی پشتیبانی نمی کند.

این کلاس امن نیست. همه متدها باید از رشته اصلی فراخوانی شوند.

توابع اعضای عمومی

(خالی) - addListener:
شنونده اضافه می کند.
(بول) - removeListener:
شنونده را حذف می کند.
(خالی) - setDestinations:callback:
چندین مقصد را برای پیمایش تنظیم می‌کند، و هر مقصدی را که قبلاً تنظیم شده بود، لغو می‌کند.
(خالی) - setDestinations:routingOptions:callback:
چندین مقصد را برای پیمایش تنظیم می‌کند، و هر مقصدی را که قبلاً تنظیم شده بود، لغو می‌کند.
(خالی) - setDestinations:routeToken:callback:
چندین مقصد را برای پیمایش تنظیم می کند، با استفاده از یک نشانه مسیر برای پیمایش در یک مسیر از پیش محاسبه شده.
(خالی) - getRouteInfoForDestination:withRoutingOptions:callback:
اطلاعات مسیر را بر اساس استراتژی مسیریابی برمی‌گرداند: بهترین مسیر پیش‌فرض یا کوتاه‌تر.
( GMSNavigationWaypoint قابل تهی *) - continueToNextDestination
منسوخ.
(خالی) - مقصدهای روشن
تمام مقصدهای تعیین شده قبلی را پاک می کند و مسیرهای محاسبه شده را از نقشه حذف می کند.
(NSTtimeInterval) - timeToWaypoint:
زمان تخمینی را به نقطه بین مسیر داده شده برمی گرداند، یا اگر نقطه بین مسیر بخشی از مسیر فعلی نباشد، CLTimeIntervalMax را برمی گرداند.
(CLLlocationDistance) - فاصله تا نقطه راه:
مسافت تخمین زده شده را تا نقطه تعیین شده یا CLLocationDistanceMax را برمی‌گرداند اگر نقطه بین راهی بخشی از مسیر فعلی نباشد.
(خالی) - setTransactionIDs:errorHandler:
شناسه‌های تراکنش در حال انجام را که در طول جلسه ناوبری جاری در رویدادهای پیمایش اعمال می‌شوند، تنظیم و ثبت می‌کند.

خواص

BOOL اجتناب از بزرگراه ها
آیا هنگام ایجاد مسیرها به مقصد از بزرگراه ها اجتناب کنید.
BOOL اجتناب از عوارض
آیا هنگام ایجاد مسیرها به مقصد، از جاده‌های دارای عوارض اجتناب کنید.
BOOL اجتناب از کشتی
آیا هنگام ایجاد مسیرها به مقصد از کشتی اجتناب شود.
GMSNavigationLicensePlateRestriction * LicensePlateRestriction
محدودیت پلاک را با آخرین رقم پلاک و کد کشور راننده فعلی تنظیم کنید.
BOOL راهنمای فعال
آیا راهنمایی گام به گام در حال حاضر فعال است یا خیر.
BOOL stopGuidanceAtArrival
آیا هنگام فراخوانی -navigator :didArriveAtWaypoint: راهنمایی باید به طور خودکار متوقف شود یا خیر.
NSTimeInterval timeUpdateThreshold
حداقل تغییر زمان تخمینی تا مقصد بعدی که متد navigator:didUpdateRemainingTime: فراخوانی می شود.
فاصله CLL distanceUpdateThreshold
حداقل تغییر در فاصله تخمینی تا مقصد بعدی که متد navigator:didUpdateRemainingDistance: فراخوانی می شود.
NSTimeInterval timeToNextDestination
زمان تخمینی را به مقصد بعدی برمی گرداند.
فاصله CLL فاصله تا مقصد بعدی
فاصله تخمینی تا مقصد بعدی را برمی‌گرداند.
GMSNavigationDelayCategory delayCategoryToNextDestination
دسته تاخیر را به مقصد بعدی برمی گرداند.
GMSRouteLeg * currentRouteLeg
مرحله فعلی سفر.
NSArray< GMSRouteLeg * > * routeLegs
آرایه ای از پاهای مسیر که در آن هر پایه با مقصدی که تعیین شده است مطابقت دارد.
GMSPath * traveledPath
مسیری که دستگاه از آخرین باری که guidanceActive روی YES تنظیم شده بود طی کرده است.
GMSNavigationVoiceGuidance راهنمای صوتی
تعیین می کند که آیا هدایت صوتی باید برای هشدارهای ترافیکی و گام به گام فعال شود یا خیر.
GMSVoiceGuidanceAudioDeviceType نوع دستگاه صوتی
تعیین می کند که راهنمایی صوتی از چه دستگاه های صوتی ممکن است پخش شود.
BOOL لرزش فعال شد
تعیین می کند که آیا دستگاه باید هنگام پخش هشدارهای صوتی نیز بلرزد یا خیر.
BOOL ارسال اعلانات پس زمینه
تعیین می‌کند که آیا UILocalNotifications حاوی اطلاعات راهنمایی زمانی که برنامه در پس‌زمینه است ارائه شود یا خیر.
GMSNavigationLightingMode پیشنهاد شده نورپردازی
حالت روشنایی پیشنهادی، بر اساس زمان روز و مکان دستگاه.
BOOL بایدDisplayPrompts
تعیین می کند که آیا درخواست های مربوط به ترافیک، مسیرهای بهتر و حوادث باید نمایش داده شوند یا خیر.
GMSNavigationSpeedAlertOptions * speedAlertOptions
GMSNavigationSpeedAlertOptions برای سفارشی کردن آستانه های راه اندازی برای GMSNavigationSpeedAlertSeverity.

(توجه داشته باشید که اینها توابع عضو نیستند.)

typedef void(^ GMSRouteStatusCallback )( GMSRouteStatus routeStatus)
زمانی فراخوانی می شود که مسیری از مکان دستگاه به مقصد(های) ارائه شده پیدا شود، یا به دلیلی که توسط RouteStatus مشخص شده است، پیدا نشود.
typedef void(^ GMSRouteInfoCallback )( GMSNavigationRouteInfo *_Nullable routeInfo)
زمانی فراخوانی می شود که اطلاعات مسیر (ETA و مسافت) تا ایستگاه بین راه ارائه شده محاسبه شود.
typedef void(^ GMSNavigationTransactionIDErrorHandler )(NSE خطا *خطا)
اگر تنظیم شناسه تراکنش از طریق setTransactionIDs ناموفق باشد، فراخوانی می شود.

مستندات عملکرد اعضا

- (باطل) addListener: (id< GMSNavigatorListener >) شنونده

شنونده اضافه می کند.

شنونده با یک مرجع ضعیف برگزار می شود.

مولفه های:
شنونده یک شی مطابق با پروتکل GMSNavigatorListener .
- (BOOL) removeListener: (id< GMSNavigatorListener >) شنونده

شنونده را حذف می کند.

مولفه های:
شنونده یک شی مطابق با پروتکل GMSNavigatorListener .
برمی گرداند:
اگر شنونده حذف شده باشد، YES را برمی‌گرداند. اگر شی شنونده نبود، NO را برمی‌گرداند.
- (باطل) setDestinations: (NSArray< GMSNavigationWaypoint * > *) مقاصد
پاسخ به تماس: ( GMSRouteStatusCallback ) پاسخ به تماس

چندین مقصد را برای پیمایش تنظیم می‌کند، و هر مقصدی را که قبلاً تنظیم شده بود، لغو می‌کند.

اگر مسیری از مکان دستگاه به مقصد مشخص شده پیدا شود، پاسخ تماس ارائه شده با GMSRouteStatusOK فراخوانی می شود. اگر قبل از یافتن مسیر، مقصد جدیدی تنظیم شود، درخواست لغو می‌شود و تماس برگشتی با GMSRouteStatusCanceled فراخوانی می‌شود. اگر مسیری به هر دلیل دیگری پیدا نشد، تماس برگشتی با وضعیت خطای مناسب فراخوانی می شود.

تماس برگشتی همیشه به صورت ناهمزمان در صف اصلی ارسال می شود.

- (باطل) setDestinations: (NSArray< GMSNavigationWaypoint * > *) مقاصد
گزینه های مسیریابی: ( GMSNavigationRoutingOptions *) گزینه های مسیریابی
پاسخ به تماس: ( GMSRouteStatusCallback ) پاسخ به تماس

چندین مقصد را برای پیمایش تنظیم می‌کند، و هر مقصدی را که قبلاً تنظیم شده بود، لغو می‌کند.

مسیرهای برگشتی با استفاده از گزینه های مسیریابی محاسبه می شوند.

مولفه های:
مقاصد مجموعه ای از ایستگاه های بین راهی مقصد.
گزینه های مسیریابی گزینه هایی که بر منطق مسیریابی تأثیر می گذارند (استراتژی مسیریابی).
پاسخ به تماس زمانی که مسیری از مکان مصرف کننده به مقصد(های) ارائه شده پیدا می شود، یا به دلیلی که توسط RouteStatus مشخص شده است، پیدا نمی شود، فراخوانی می شود.
- (باطل) setDestinations: (NSArray< GMSNavigationWaypoint * > *) مقاصد
routeToken: (NSString *) routeToken
پاسخ به تماس: ( GMSRouteStatusCallback ) پاسخ به تماس

چندین مقصد را برای پیمایش تنظیم می کند، با استفاده از یک نشانه مسیر برای پیمایش در یک مسیر از پیش محاسبه شده.

مسیرها یکسان خواهند بود، مدول به مکان شروع راننده و شرایط جاده/ترافیک تغییر می کند. مسیرهای مجدد همچنان بر اساس گزینه های مسیریابی کدگذاری شده در توکن رخ می دهد.

فقط GMSNavigationTravelModeDriving و GMSNavigationTravelModeTwoWheeler زمانی که از نشانه مسیر برای شروع یک جلسه ناوبری استفاده می کنید پشتیبانی می شوند. با تنظیم travelMode حالت سفر را پیکربندی کنید. اگر حالت سفر فعلی پشتیبانی نشود، تماس با شکست مواجه می‌شود و یک GMSRouteStatusTravelModeUnsupported در تماس برگشتی برگردانده می‌شود.

مولفه های:
مقاصد آرایه ای از ایستگاه های بین مقصد، باید همان مقصدهایی باشد که به RoutesPreferred API برای دریافت نشانه مسیر داده شده است.
routeToken یک رشته نشانه مسیر که توسط RoutesPreferred API برگردانده شده است. گزینه‌های مسیریابی مشخص‌شده در RoutesPreferred API در این نشانه مسیر کدگذاری می‌شوند و برای ایجاد مجدد مسیر از پیش محاسبه‌شده یا یک مسیر جدید در صورت وقوع مجدد مسیر استفاده می‌شوند.
پاسخ به تماس زمانی که مسیری از محل مصرف کننده به مقصد(های) ارائه شده پیدا می شود، یا به دلیلی که توسط RouteStatus مشخص شده است، پیدا نمی شود، فراخوانی می شود.
- (باطل) getRouteInfoForDestination: ( GMSNavigationWaypoint *) مقصد
withRoutingOptions: ( GMSNavigationRoutingOptions *) گزینه های مسیریابی
پاسخ به تماس: ( GMSRouteInfoCallback ) پاسخ به تماس

اطلاعات مسیر را بر اساس استراتژی مسیریابی برمی‌گرداند: بهترین مسیر پیش‌فرض یا کوتاه‌تر.

اگر پروژه مجوز فراخوانی این API را نداشته باشد، مقدار nil را برمی‌گرداند.

مولفه های:
مقصد نقطه عبور مقصد
گزینه های مسیریابی گزینه های مورد استفاده برای واکشی اطلاعات مسیر. استراتژی مسیریابی و استراتژی مسیرهای جایگزین نادیده گرفته می‌شوند زیرا این روش اطلاعات مسیر را برای همه استراتژی‌های مسیریابی برمی‌گرداند.
پاسخ به تماس هنگامی که اطلاعات مسیرها دریافت می شود، تماس پاسخ داده می شود.

منسوخ.

به جای فراخوانی این متد، یکی از متدهای -setDestinations :... را با لیست جدید مقصدها فراخوانی کنید.

اولین مقصد را از لیست مقصدهای فعلی نمایش می دهد. پس از این تماس، در صورت وجود، راهنمایی به سمت مقصد بعدی خواهد بود.

برمی گرداند:
راهنمای نقطه‌ی بین راه اکنون به سمت راه می‌رود، یا اگر نقطه‌ای دیگر باقی نمانده باشد، صفر است.
توجه داشته باشید:
این منسوخ شده است. به جای آن از یکی از متدهای -setDestinations:... استفاده کنید
- (باطل) روشن مقصدها

تمام مقصدهای تعیین شده قبلی را پاک می کند و مسیرهای محاسبه شده را از نقشه حذف می کند.

اگر راهنما فعال باشد، به طور خودکار آن را متوقف می کند.

- (NSTimeInterval) timeToWaypoint: ( GMSNavigationWaypoint *) نقطه راه

زمان تخمینی را به نقطه بین مسیر داده شده برمی گرداند، یا اگر نقطه بین مسیر بخشی از مسیر فعلی نباشد، CLTimeIntervalMax را برمی گرداند.

در حالی که راهنما فعال است، این بر اساس موقعیت فعلی دستگاه به روز می شود.

اگر نقطه راه ارائه شده مقصدی در مسیر فعلی نباشد، CLTimeIntervalMax را برمی‌گرداند.

- (CLLocationDistance) فاصله تا نقطه راه: ( GMSNavigationWaypoint *) نقطه راه

مسافت تخمین زده شده را تا نقطه تعیین شده یا CLLocationDistanceMax را برمی‌گرداند اگر نقطه بین راهی بخشی از مسیر فعلی نباشد.

در حالی که راهنما فعال است، این بر اساس موقعیت فعلی دستگاه به روز می شود.

اگر نقطه راه ارائه شده مقصدی در مسیر فعلی نباشد، CLLocationDistanceMax را برمی‌گرداند.

- (باطل) setTransactionIDs: (NSArray< NSString * > *) شناسه های تراکنش
error Handler: ( GMSNavigationTransactionIDError Handler nullable) error Handler

شناسه‌های تراکنش در حال انجام را که در طول جلسه ناوبری جاری در رویدادهای پیمایش اعمال می‌شوند، تنظیم و ثبت می‌کند.

شناسه تراکنش ها در پایان جلسه ناوبری پاک می شود.

مولفه های:
شناسه های تراکنش شناسه‌های تراکنش که برای جلسه پیمایش فعلی اعمال می‌شوند. شناسه تراکنش باید برای هر تراکنش قابل پرداخت یکتا باشد. شناسه تراکنش فردی باید حداقل یک و حداکثر 64 کاراکتر داشته باشد. وقتی تراکنش به پایان رسیده است، لیست می تواند خالی باشد (اما جلسه همچنان ادامه دارد).
error Handler بلوکی که در صورت نامعتبر بودن شناسه تراکنش ها، خطایی روی رشته اصلی به صورت ناهمزمان فراخوانی می شود.

- (typedef void(^ GMSRouteStatusCallback )( GMSRouteStatus routeStatus)) [related]

زمانی فراخوانی می شود که مسیری از مکان دستگاه به مقصد(های) ارائه شده پیدا شود، یا به دلیلی که توسط RouteStatus مشخص شده است، پیدا نشود.

- (typedef void(^ GMSRouteInfoCallback )( GMSNavigationRouteInfo *_Nullable routeInfo)) [related]

زمانی فراخوانی می شود که اطلاعات مسیر (ETA و مسافت) تا ایستگاه بین راه ارائه شده محاسبه شود.

مولفه های:
routeInfo اطلاعات مسیر به مقصد مورد نظر در صورت عدم موفقیت محاسبه، صفر خواهد بود.
- (typedef void(^ GMSNavigationTransactionIDErrorHandler )(NSE خطا *خطا)) [related]

اگر تنظیم شناسه تراکنش از طریق setTransactionIDs ناموفق باشد، فراخوانی می شود.

برای جزئیات بیشتر به اسناد API مراجعه کنید.


اسناد ملکی

- (BOOL) اجتناب از بزرگراه ها [read, write, assign]

آیا هنگام ایجاد مسیرها به مقصد از بزرگراه ها اجتناب کنید.

پیش‌فرض NO است.

- (BOOL) اجتناب از عوارض [read, write, assign]

آیا هنگام ایجاد مسیرها به مقصد، از جاده‌های دارای عوارض اجتناب کنید.

پیش‌فرض NO است.

- (BOOL) avoidsFerries [read, write, assign]

آیا هنگام ایجاد مسیرها به مقصد از کشتی اجتناب شود.

به طور پیش فرض بله.

محدودیت پلاک را با آخرین رقم پلاک و کد کشور راننده فعلی تنظیم کنید.

این به ما امکان می‌دهد تا انواع خاصی از محدودیت‌های جاده‌ای را که بر اساس شماره پلاک خودرو هستند، طی کنیم. این فقط برای تماس‌های setDestinations که پس از تنظیم این مقدار انجام می‌شوند اعمال می‌شود. در حالت ایده‌آل، این را بلافاصله پس از دریافت ناوبر تنظیم کنید.

اگر محدودیتی برای پلاک وجود ندارد، روی صفر تنظیم کنید. پیش فرض به صفر.

- (BOOL) guidanceActive [read, write, assign]

آیا راهنمایی گام به گام در حال حاضر فعال است یا خیر.

اگر guidanceActive بله است، اما هیچ مسیری در حال حاضر در دسترس نیست، وقتی مسیری در دسترس قرار گرفت، راهنمایی شروع می‌شود. اگر clearDestinations فراخوانی شود یا به یک ایستگاه بین راهی برسیم، این ویژگی روی NO تنظیم می شود.

- (BOOL) stopGuidanceAtArrival [read, write, assign]

آیا هنگام فراخوانی -navigator :didArriveAtWaypoint: راهنمایی باید به طور خودکار متوقف شود یا خیر.

در صورت خیر، سرصفحه و پاورقی پیمایش پس از ورود همچنان نشان داده می شوند. هدر ناوبری به نشان دادن مرحله راهنمایی نهایی ادامه می دهد و پاورقی پیمایش به به روز رسانی زمان و مسافت باقی مانده تا رسیدن به زمان/فاصله 0 ادامه می دهد. علاوه بر این، به‌روزرسانی‌های -navigator :didUpdateRemainingTime و -navigator :didUpdateRemainingDistance ادامه خواهند یافت. به صراحت guidanceActive را روی NO تنظیم کنید تا راهنمایی و به‌روزرسانی‌های زمان/مسافت باقیمانده را متوقف کنید.

وقتی YES، guidanceActive به‌طور خودکار پس از ورود روی NO تنظیم می‌شود.

به طور پیش فرض بله.

- (NSTimeInterval) timeUpdateThreshold [read, write, assign]

حداقل تغییر زمان تخمینی تا مقصد بعدی که متد navigator:didUpdateRemainingTime: فراخوانی می شود.

اگر این روی NSTimeIntervalMax تنظیم شود، تماس های به روز رسانی زمانی غیرفعال می شود. اگر این مقدار روی مقدار منفی تنظیم شود، از آستانه پیش‌فرض یک ثانیه استفاده می‌شود. پیش فرض یک ثانیه است.

توجه داشته باشید:
در صورتی که هیچ شنونده ای از navigator:didUpdateRemainingTime: استفاده نکند، این مقدار نادیده گرفته می شود.
- (CLLocationDistance) distanceUpdateThreshold [read, write, assign]

حداقل تغییر در فاصله تخمینی تا مقصد بعدی که متد navigator:didUpdateRemainingDistance: فراخوانی می شود.

اگر روی CLLocationDistanceMax تنظیم شود، تماس های به روز رسانی فاصله غیرفعال می شود. اگر این مقدار روی مقدار منفی تنظیم شود، از آستانه پیش‌فرض یک متر استفاده می‌شود. پیش فرض یک متر است.

توجه داشته باشید:
این مقدار در صورتی که هیچ شنونده ای از navigator:didUpdateRemainingDistance: .
- (NSTimeInterval) timeToNextDestination [read, assign]

زمان تخمینی را به مقصد بعدی برمی گرداند.

در حالی که راهنما فعال است، این بر اساس موقعیت فعلی دستگاه به روز می شود.

اگر مسیری در دسترس نباشد، CLTimeIntervalMax را برمی‌گرداند.

- (CLLocationDistance) distanceToNextDestination [read, assign]

فاصله تخمینی تا مقصد بعدی را برمی‌گرداند.

در حالی که راهنما فعال است، این بر اساس موقعیت فعلی دستگاه به روز می شود.

اگر مسیری در دسترس نباشد، CLLocationDistanceMax را برمی‌گرداند.

- (GMSNavigationDelayCategory) delayCategoryToNextDestination [read, assign]

دسته تاخیر را به مقصد بعدی برمی گرداند.

در حالی که راهنما فعال است، این بر اساس موقعیت فعلی دستگاه به روز می شود.

اگر مسیری در دسترس نباشد یا داده‌های ترافیک در دسترس نباشد، GMSNavigationDelayCategoryNoData را برمی‌گرداند.

- ( GMSRouteLeg *) currentRouteLeg [read, assign]

مرحله فعلی سفر.

این GMSRouteLeg موقعیت شروع خود را به عنوان جدیدترین موقعیت شناخته شده (جاده ای) دستگاه خواهد داشت.

- (NSArray< GMSRouteLeg *>*) routeLegs [read, assign]

آرایه ای از پاهای مسیر که در آن هر پایه با مقصدی که تعیین شده است مطابقت دارد.

- ( GMSPath *) traveledPath [read, assign]

مسیری که دستگاه از آخرین باری که guidanceActive روی YES تنظیم شده بود طی کرده است.

این مسیر خالی است اگر هدایت هرگز شروع نشده باشد. مسیر متشکل از موقعیت مکانی است که توسط GMSRoadSnappedLocationProvider بازگردانده شده است، اما برای حذف نقاط اضافی ساده شده است. به عنوان مثال تبدیل نقاط خطی متوالی به یک پاره خط واحد.

- ( GMSNavigationVoiceGuidance ) voiceGuidance [read, write, assign]

تعیین می کند که آیا هدایت صوتی باید برای هشدارهای ترافیکی و گام به گام فعال شود یا خیر.

پیش‌فرض GMSNavigationVoiceGuidanceAlertsAndGuidance.

تعیین می کند که راهنمایی صوتی از چه دستگاه های صوتی ممکن است پخش شود.

پیش‌فرض GMSVoiceGuidanceAudioDeviceTypeBluetooth است.

- (BOOL) vibration Enabled [read, write, assign]

تعیین می کند که آیا دستگاه باید هنگام پخش هشدارهای صوتی نیز بلرزد یا خیر.

- (BOOL) BackgroundNotifications ارسال می کند [read, write, assign]

تعیین می‌کند که آیا UILocalNotifications حاوی اطلاعات راهنمایی زمانی که برنامه در پس‌زمینه است ارائه شود یا خیر.

به طور پیش فرض بله.

حالت روشنایی پیشنهادی، بر اساس زمان روز و مکان دستگاه.

- (BOOL) shouldDisplayPrompts [read, write, assign]

تعیین می کند که آیا درخواست های مربوط به ترافیک، مسیرهای بهتر و حوادث باید نمایش داده شوند یا خیر.

به طور پیش فرض بله.

GMSNavigationSpeedAlertOptions برای سفارشی کردن آستانه های راه اندازی برای GMSNavigationSpeedAlertSeverity.

می‌توانید از این ویژگی برای سفارشی‌سازی آستانه‌های هشدار سرعت به صورت درصد برای هشدارهای جزئی و اصلی استفاده کنید. همچنین می‌توانید از این روش برای سفارشی‌سازی آستانه راه‌اندازی مبتنی بر زمان برای هشدار سرعت اصلی استفاده کنید.

با تنظیم صفر، هیچ داده فید سرعت دریافت نمی‌کنید و هشدار سرعت پیش‌فرض NavSDK نمایش داده می‌شود: هشدار سرعت زمانی که سرعت بیش از 5 مایل در ساعت یا 10 کیلومتر بر ساعت بیش از حد مجاز باشد، متن قرمز را نشان می‌دهد و متن سفید و قرمز را نشان می‌دهد. پس زمینه هنگام سرعت بیش از 10 مایل در ساعت یا 20 کیلومتر در ساعت.