Referensi Class GMSNavigator

Referensi Class GMSNavigator

Ringkasan

Ini adalah class utama Google Navigation SDK untuk iOS dan menyediakan metode untuk mengontrol navigasi ke tujuan serta mengakses informasi rute dan progres.

Class ini tidak mendukung pembuatan subclass.

Class ini tidak aman untuk thread. Semua metode harus dipanggil dari thread utama.

Fungsi Anggota Publik

(void) - addListener:
 Menambahkan pemroses.
(BOOL) - removeListener:
 Menghapus pemroses.
(void) - setDestinations:callback:
 Menetapkan beberapa tujuan untuk navigasi, mengganti tujuan yang ditetapkan sebelumnya.
(void) - setDestinations:routingOptions:callback:
 Menetapkan beberapa tujuan untuk navigasi, mengganti tujuan yang ditetapkan sebelumnya.
(void) - setDestinations:routeToken:callback:
 Menetapkan beberapa tujuan untuk navigasi, menggunakan token rute untuk menavigasi di rute yang telah dihitung sebelumnya.
(void) - getRouteInfoForDestination:withRoutingOptions:callback:
 Menampilkan informasi rute berdasarkan strategi pemilihan rute: rute default terbaik atau lebih pendek.
(nullable GMSNavigationWaypoint *)- continueToNextDestination
 Tidak digunakan lagi.
(void) - clearDestinations
 Menghapus semua tujuan yang ditetapkan sebelumnya dan menghapus rute yang dihitung dari peta.
(NSTimeInterval)- timeToWaypoint:
 Menampilkan perkiraan waktu ke titik jalan tertentu, atau CLTimeIntervalMax jika titik jalan bukan bagian dari rute saat ini.
(CLLocationDistance)- distanceToWaypoint:
 Menampilkan perkiraan jarak ke titik jalan yang diberikan, atau CLLocationDistanceMax jika titik jalan bukan bagian dari rute saat ini.
(void) - setTransactionIDs:errorHandler:
 Menetapkan dan mencatat ID transaksi yang sedang berlangsung ke server yang berlaku untuk peristiwa navigasi selama sesi navigasi saat ini.

Properti

BOOLavoidsHighways
 Apakah akan menghindari jalan raya saat membuat rute ke tujuan.
BOOLavoidsTolls
 Apakah akan menghindari jalan tol saat membuat rute ke tujuan.
BOOLavoidsFerries
 Apakah akan menghindari kapal feri saat membuat rute ke tujuan.
GMSNavigationLicensePlateRestrictionlicensePlateRestriction
 Tetapkan pembatasan pelat nomor dengan angka terakhir pelat nomor dan kode negara pengemudi saat ini.
BOOLguidanceActive
 Apakah panduan belokan demi belokan saat ini diaktifkan.
BOOLstopGuidanceAtArrival
 Apakah panduan harus otomatis berhenti saat -navigator:didSampaiAtWaypoint: dipanggil.
NSTimeIntervaltimeUpdateThreshold
 Perubahan minimum dalam estimasi waktu ke tujuan berikutnya yang akan memicu metode navigator:didUpdateRemainingTime: dipanggil.
CLLocationDistancedistanceUpdateThreshold
 Perubahan minimum dalam perkiraan jarak ke tujuan berikutnya yang akan memicu metode navigator:didUpdateRemainingDistance: dipanggil.
NSTimeIntervaltimeToNextDestination
 Menampilkan perkiraan waktu ke tujuan berikutnya.
CLLocationDistancedistanceToNextDestination
 Menampilkan perkiraan jarak ke tujuan berikutnya.
GMSNavigationPenundaanCategorydelayCategoryToNextDestination
 Menampilkan kategori keterlambatan ke tujuan berikutnya.
GMSRouteLegcurrentRouteLeg
 Bagian perjalanan saat ini.
NSArray< GMSRouteLeg * > * routeLegs
 Array segmen rute dengan setiap segmen sesuai dengan tujuan yang telah ditetapkan.
GMSPathtraveledPath
 Jalur yang dilalui perangkat sejak terakhir kali guidanceActive disetel ke YA.
GMSNavigationVoiceGuidancevoiceGuidance
 Menentukan apakah panduan suara harus diaktifkan untuk lalu lintas dan notifikasi belokan demi belokan.
GMSVoiceGuidanceAudioDeviceTypeaudioDeviceType
 Menentukan perangkat audio yang dapat memutar panduan suara.
BOOLvibrationEnabled
 Menentukan apakah perangkat juga harus bergetar saat notifikasi suara diputar.
BOOLsendsBackgroundNotifications
 Menentukan apakah UILocalNotifications yang berisi informasi panduan akan ditampilkan saat aplikasi berada di latar belakang.
GMSNavigationLightingModesuggestedLightingMode
 Mode pencahayaan yang disarankan, berdasarkan waktu dan lokasi perangkat.
BOOLshouldDisplayPrompts
 Menentukan apakah perintah untuk lalu lintas, rute yang lebih baik, dan insiden harus ditampilkan.
GMSNavigationSpeedAlertOptionsspeedAlertOptions
 GMSNavigationSpeedAlertOptions untuk menyesuaikan nilai minimum pemicu untuk GMSNavigationSpeedAlertSeverity.

(Perhatikan bahwa ini bukan fungsi anggota.)

typedef void(^ GMSRouteStatusCallback )(GMSRouteStatus routeStatus)
 Dipanggil saat rute dari lokasi perangkat ke tujuan yang diberikan ditemukan, atau gagal ditemukan karena alasan yang ditunjukkan oleh RouteStatus.
typedef void(^ GMSRouteInfoCallback )(GMSNavigationRouteInfo *_Nullable routeInfo)
 Dipanggil saat informasi rute (PWT dan jarak) ke titik jalan yang diberikan dihitung.
typedef void(^ GMSNavigationTransactionIDErrorHandler )(NSError *error)
 Dipanggil jika menetapkan ID transaksi melalui setTransactionIDs gagal.

Dokumentasi Fungsi Anggota

- (void) addListener: (id< GMSNavigatorListener >) pemroses

Menambahkan pemroses.

Pemroses ditahan dengan referensi yang lemah.

Parameter:
pemrosesObjek yang sesuai dengan protokol GMSNavigatorListener.
- (BOOL) removeListener: (id< GMSNavigatorListener >) pemroses

Menghapus pemroses.

Parameter:
pemrosesObjek yang sesuai dengan protokol GMSNavigatorListener.
Hasil:
Menampilkan YA jika pemroses dihapus. Menampilkan NO jika objek bukan pemroses.
- (void) setDestinations: (NSArray< GMSNavigationWaypoint * > *) tujuan
: (GMSRouteStatusCallback) callback

Menetapkan beberapa tujuan untuk navigasi, mengganti tujuan yang ditetapkan sebelumnya.

Callback yang diberikan akan dipanggil dengan GMSRouteStatusOK jika rute ditemukan dari lokasi perangkat ke tujuan yang diberikan. Jika tujuan baru ditetapkan sebelum rute ditemukan, permintaan akan dibatalkan, dan callback akan dipanggil dengan GMSRouteStatusCancelled. Jika rute tidak dapat ditemukan karena alasan lain, callback akan dipanggil dengan status error yang sesuai.

Callback akan selalu dikirim secara asinkron pada antrean utama.

- (void) setDestinations: (NSArray< GMSNavigationWaypoint * > *) tujuan
{i>routingOptions<i}: (GMSNavigationRoutingOptions *) routingOptions
: (GMSRouteStatusCallback) callback

Menetapkan beberapa tujuan untuk navigasi, mengganti tujuan yang ditetapkan sebelumnya.

Rute yang ditampilkan dihitung menggunakan opsi pemilihan rute.

Parameter:
tujuanArray titik jalan tujuan.
routingOptionsOpsi yang memengaruhi logika pemilihan rute (strategi perutean).
callbackDipanggil saat rute dari lokasi konsumen ke tujuan yang diberikan ditemukan, atau gagal ditemukan karena alasan yang ditunjukkan oleh RouteStatus.
- (void) setDestinations: (NSArray< GMSNavigationWaypoint * > *) tujuan
routeToken: (NSString *) routeToken
: (GMSRouteStatusCallback) callback

Menetapkan beberapa tujuan untuk navigasi, menggunakan token rute untuk menavigasi di rute yang telah dihitung sebelumnya.

Rute akan sama, perubahan modulus pada lokasi awal pengemudi dan kondisi jalan/lalu lintas. Perubahan rute akan tetap terjadi berdasarkan opsi pemilihan rute yang dienkode dalam token.

Hanya GMSNavigationTravelModeDriving dan GMSNavigationTravelModeTwoWheeler yang didukung saat Anda menggunakan token rute untuk memulai sesi navigasi. Konfigurasi mode perjalanan dengan menyetel travelMode. Panggilan akan gagal jika mode perjalanan saat ini tidak didukung, dan GMSRouteStatusTravelModeUnsupported akan ditampilkan dalam callback.

Parameter:
tujuanArray titik jalan tujuan harus sama dengan tujuan yang diberikan ke RoutesPreferred API untuk mendapatkan token rute.
routeTokenString token rute yang ditampilkan oleh RoutesPreferred API. Opsi pemilihan rute yang ditentukan dalam RoutesPreferred API dienkode dalam token rute ini, dan akan digunakan untuk membuat ulang rute yang telah diprakomputasi atau rute baru saat terjadi pengubahan rute.
callbackDipanggil saat rute dari lokasi konsumen ke tujuan yang diberikan ditemukan, atau gagal ditemukan karena alasan yang ditunjukkan oleh RouteStatus.
- (void) getRouteInfoForDestination: (GMSNavigationWaypoint *) akun penerima
withRoutingOptions: (GMSNavigationRoutingOptions *) routingOptions
: (GMSRouteInfoCallback) callback

Menampilkan informasi rute berdasarkan strategi pemilihan rute: rute default terbaik atau lebih pendek.

Menampilkan nilai nil jika project tidak memiliki izin untuk memanggil API ini.

Parameter:
akun penerimaTitik jalan tujuan.
routingOptionsOpsi yang digunakan untuk mengambil info rute. Strategi pemilihan rute dan strategi rute alternatif diabaikan karena metode ini menampilkan informasi rute untuk semua strategi pemilihan rute.
callbackCallback yang dipanggil saat informasi rute diterima.

Tidak digunakan lagi.

Panggil salah satu metode -setDestinations:... dengan daftar tujuan baru, bukan memanggil metode ini.

Menampilkan tujuan pertama dari daftar tujuan saat ini. Setelah panggilan ini, panduan akan mengarah ke tujuan berikutnya, jika ada.

Hasil:
panduan titik jalan sekarang mengarah ke, atau menjadi nol jika tidak ada lagi titik jalan yang tersisa.
Catatan:
Fitur ini tidak digunakan lagi. Sebagai gantinya, gunakan salah satu metode -setDestinations:...

Menghapus semua tujuan yang ditetapkan sebelumnya dan menghapus rute yang dihitung dari peta.

Jika panduan aktif, tindakan ini akan otomatis menghentikannya.

- (NSTimeInterval) timeToWaypoint: (GMSNavigationWaypoint *) titik jalan

Menampilkan perkiraan waktu ke titik jalan tertentu, atau CLTimeIntervalMax jika titik jalan bukan bagian dari rute saat ini.

Ini diperbarui berdasarkan posisi perangkat saat ini selama panduan aktif.

Menampilkan CLTimeIntervalMax jika titik jalan yang diberikan bukan tujuan dalam rute saat ini.

- (CLLocationDistance) distanceToWaypoint: (GMSNavigationWaypoint *) titik jalan

Menampilkan perkiraan jarak ke titik jalan yang diberikan, atau CLLocationDistanceMax jika titik jalan bukan bagian dari rute saat ini.

Ini akan diperbarui berdasarkan posisi perangkat saat ini selama panduan aktif.

Menampilkan CLLocationDistanceMax jika titik jalan yang diberikan bukan tujuan dalam rute saat ini.

- (void) setTransactionIDs: (NSArray< NSString * > *) transactionIDs
errorHandler: (nullable GMSNavigationTransactionIDErrorHandler) errorHandler

Menetapkan dan mencatat ID transaksi yang sedang berlangsung ke server yang berlaku untuk peristiwa navigasi selama sesi navigasi saat ini.

ID transaksi akan dihapus pada akhir sesi navigasi.

Parameter:
transactionIDsID transaksi yang berlaku untuk sesi navigasi saat ini. ID transaksi harus unik untuk setiap transaksi yang dapat ditagih. ID transaksi individu harus berisi minimal satu dan maksimal 64 karakter. Daftar ini boleh kosong saat transaksi berakhir (tetapi sesi masih berlangsung).
errorHandlerBlok yang akan dipanggil secara asinkron di thread utama jika terjadi error saat ID transaksi tidak valid.

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

Dipanggil saat rute dari lokasi perangkat ke tujuan yang diberikan ditemukan, atau gagal ditemukan karena alasan yang ditunjukkan oleh RouteStatus.

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

Dipanggil saat informasi rute (PWT dan jarak) ke titik jalan yang diberikan dihitung.

Parameter:
routeInfoInformasi rute ke tujuan yang ditentukan. Akan bernilai nol jika penghitungan gagal.
- (typedef void(^ GMSNavigationTransactionIDErrorHandler)(NSError *error)) [related]

Dipanggil jika menetapkan ID transaksi melalui setTransactionIDs gagal.

Lihat dokumentasi API untuk detail selengkapnya.


Dokumentasi Properti

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

Apakah akan menghindari jalan raya saat membuat rute ke tujuan.

Nilai defaultnya adalah TIDAK.

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

Apakah akan menghindari jalan tol saat membuat rute ke tujuan.

Nilai defaultnya adalah TIDAK.

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

Apakah akan menghindari kapal feri saat membuat rute ke tujuan.

Default-nya adalah YES.

Tetapkan pembatasan pelat nomor dengan angka terakhir pelat nomor dan kode negara pengemudi saat ini.

Hal ini memungkinkan kami untuk menghindari jenis pembatasan jalan tertentu yang didasarkan pada nomor pelat nomor kendaraan. Ini hanya akan berlaku untuk panggilan setDestinations yang dilakukan setelah nilai ini ditetapkan. Idealnya, Anda harus menetapkannya segera setelah mendapatkan navigator.

Setel ke nol jika tidak ada pembatasan pelat nomor. Nilai defaultnya adalah nol.

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

Apakah panduan belokan demi belokan saat ini diaktifkan.

Jika panduanAktif adalah YA, tetapi tidak ada rute yang tersedia saat ini, panduan akan dimulai saat rute tersedia. Properti ini akan ditetapkan ke NO jika clearDestinations dipanggil, atau kita sampai pada sebuah titik jalan.

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

Apakah panduan harus otomatis berhenti saat -navigator:didSampaiAtWaypoint: dipanggil.

Jika TIDAK, header dan footer navigasi akan terus ditampilkan setelah sampai. Header navigasi akan terus menampilkan langkah panduan akhir dan footer navigasi akan terus memperbarui waktu dan jarak yang tersisa hingga waktu/jarak 0 tercapai. Selain itu, update -navigator:didUpdateRemainingTime dan -navigator:didUpdateRemainingDistance akan berlanjut. Setel guidanceActive secara eksplisit ke TIDAK untuk menghentikan panduan dan pembaruan waktu/jarak yang tersisa.

Jika YA, guidanceActive akan otomatis ditetapkan ke TIDAK saat kedatangan.

Default-nya adalah YES.

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

Perubahan minimum dalam estimasi waktu ke tujuan berikutnya yang akan memicu metode navigator:didUpdateRemainingTime: dipanggil.

Jika disetel ke NSTimeIntervalMax, callback pembaruan waktu akan dinonaktifkan. Jika nilai ini disetel ke nilai negatif, nilai minimum default satu detik akan digunakan. Default-nya adalah satu detik.

Catatan:
Nilai ini diabaikan jika tidak ada pemroses yang mengimplementasikan navigator:didUpdateRemainingTime:.
- (CLLocationDistance) distanceUpdateThreshold [read, write, assign]

Perubahan minimum dalam perkiraan jarak ke tujuan berikutnya yang akan memicu metode navigator:didUpdateRemainingDistance: dipanggil.

Jika disetel ke CLLocationDistanceMax, callback pembaruan jarak akan dinonaktifkan. Jika disetel ke nilai negatif, nilai minimum default satu meter akan digunakan. Default-nya adalah satu meter.

Catatan:
Nilai ini diabaikan jika tidak ada pemroses yang mengimplementasikan navigator:didUpdateRemainingDistance:.
- (NSTimeInterval) timeToNextDestination [read, assign]

Menampilkan perkiraan waktu ke tujuan berikutnya.

Ini akan diperbarui berdasarkan posisi perangkat saat ini selama panduan aktif.

Menampilkan CLTimeIntervalMax jika tidak ada rute yang tersedia.

- (CLLocationDistance) distanceToNextDestination [read, assign]

Menampilkan perkiraan jarak ke tujuan berikutnya.

Ini akan diperbarui berdasarkan posisi perangkat saat ini selama panduan aktif.

Menampilkan CLLocationDistanceMax jika tidak ada rute yang tersedia.

- (GMSNavigationDelayCategory) delayCategoryToNextDestination [read, assign]

Menampilkan kategori keterlambatan ke tujuan berikutnya.

Ini akan diperbarui berdasarkan posisi perangkat saat ini selama panduan aktif.

Menampilkan GMSNavigationDelayCategoryNoData jika tidak ada rute yang tersedia atau data lalu lintas tidak tersedia.

- (GMSRouteLeg*) currentRouteLeg [read, assign]

Bagian perjalanan saat ini.

GMSRouteLeg ini akan memiliki posisi awal sebagai posisi terbaru perangkat yang diketahui (dipaskan ke jalan).

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

Array segmen rute dengan setiap segmen sesuai dengan tujuan yang telah ditetapkan.

- (GMSPath*) traveledPath [read, assign]

Jalur yang dilalui perangkat sejak terakhir kali guidanceActive disetel ke YA.

Jalur ini kosong jika panduan belum pernah dimulai. Jalur ini terdiri dari lokasi yang diikat jalan seperti yang ditampilkan oleh GMSRoadSnappedLocationProvider, tetapi disederhanakan untuk menghapus titik redundan. Misalnya, mengubah titik garis lurus yang berurutan menjadi ruas garis tunggal.

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

Menentukan apakah panduan suara harus diaktifkan untuk lalu lintas dan notifikasi belokan demi belokan.

Setelan defaultnya adalah GMSNavigationVoiceGuideAlertsAndGuidelines.

Menentukan perangkat audio yang dapat memutar panduan suara.

Setelan defaultnya adalah GMSVoicePanduanAudioDeviceTypeBluetooth.

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

Menentukan apakah perangkat juga harus bergetar saat notifikasi suara diputar.

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

Menentukan apakah UILocalNotifications yang berisi informasi panduan akan ditampilkan saat aplikasi berada di latar belakang.

Default-nya adalah YES.

Mode pencahayaan yang disarankan, berdasarkan waktu dan lokasi perangkat.

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

Menentukan apakah perintah untuk lalu lintas, rute yang lebih baik, dan insiden harus ditampilkan.

Default-nya adalah YES.

GMSNavigationSpeedAlertOptions untuk menyesuaikan nilai minimum pemicu untuk GMSNavigationSpeedAlertSeverity.

Anda dapat menggunakan properti ini untuk menyesuaikan batas pemicu peringatan kecepatan dalam persentase untuk notifikasi minor dan besar. Anda juga dapat menggunakan metode ini untuk menyesuaikan waktu berdasarkan batas pemicu untuk peringatan kecepatan utama.

Dengan menyetel nol, Anda tidak akan menerima data feed yang mengebut, dan peringatan kecepatan default NavSDK akan ditampilkan: peringatan kecepatan menampilkan teks merah saat kecepatan melebihi batas kecepatan lebih dari 5 mph atau 10 kpj, serta menampilkan teks putih dan latar belakang merah saat melaju dengan kecepatan lebih dari 10 mph atau 20 kpj.