Referensi Class GMSNavigator

Referensi Class GMSNavigator

Ringkasan

Class 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 subclass.

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

Fungsi Anggota Publik

(kosong)- addListener:
 Menambahkan pemroses.
(BOOL)- removeListener:
 Menghapus pemroses.
(kosong)- setDestinations:callback:
 Menetapkan beberapa tujuan untuk navigasi, menggantikan tujuan yang telah ditetapkan sebelumnya.
(kosong)- setDestinations:routingOptions:callback:
 Menetapkan beberapa tujuan untuk navigasi, menggantikan tujuan yang telah ditetapkan sebelumnya.
(kosong)- setDestinations:routeToken:callback:
 Menetapkan beberapa tujuan untuk navigasi, menggunakan token rute untuk menavigasi pada rute yang telah dihitung sebelumnya.
(kosong)- getRouteInfoForDestination:withRoutingOptions:callback:
 Menampilkan informasi rute berdasarkan strategi pemilihan rute: rute terbaik atau lebih pendek default.
(GMSNavigationWaypoint nullable *)- continueToNextDestination
 Tidak digunakan lagi.
(kosong)- clearDestinations
 Menghapus semua tujuan yang ditetapkan sebelumnya dan menghapus semua rute yang dihitung dari peta.
(NSTimeInterval)- timeToWaypoint:
 Menampilkan perkiraan waktu ke titik jalan yang diberikan, 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.
(kosong)- setTransactionIDs:errorHandler:
 Menetapkan dan mencatat ID transaksi berkelanjutan 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.
GMSNavigationLicensePlateRestriction *licensePlateRestriction
 Tetapkan pembatasan ganjil genap dengan digit terakhir pelat nomor pengemudi saat ini dan kode negara.
BOOLguidanceActive
 Apakah panduan belokan demi belokan saat ini diaktifkan.
BOOLstopGuidanceAtArrival
 Apakah panduan akan 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 pada perkiraan jarak ke tujuan berikutnya yang akan memicu metode navigator:didUpdateRemainingDistance: dipanggil.
NSTimeIntervaltimeToNextDestination
 Menampilkan estimasi waktu ke tujuan berikutnya.
CLLocationDistancedistanceToNextDestination
 Menampilkan perkiraan jarak ke tujuan berikutnya.
GMSNavigationDelayCategorydelayCategoryToNextDestination
 Menampilkan kategori keterlambatan ke tujuan berikutnya.
GMSRouteLeg *currentRouteLeg
 Segmen perjalanan saat ini.
NSArray< GMSRouteLeg * > *routeLegs
 Array segmen rute yang setiap segmennya sesuai dengan tujuan yang telah ditetapkan.
GMSPath *traveledPath
 Jalur yang telah dilalui pengguna di sesi panduan terbaru, yang ditentukan sebagai panduan terakhir kaliAktif disetel ke YA.
GMSNavigationVoiceGuidancevoiceGuidance
 Menentukan apakah panduan suara harus diaktifkan untuk notifikasi lalu lintas dan belokan demi belokan.
GMSVoiceGuidanceAudioDeviceTypeaudioDeviceType
 Menentukan panduan suara perangkat audio apa saja yang dapat diputar.
BOOLvibrationEnabled
 Menentukan apakah perangkat juga akan 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 dialog lalu lintas, rute yang lebih baik, dan insiden harus ditampilkan.
GMSNavigationSpeedAlertOptions *speedAlertOptions
 GMSNavigationSpeedAlertOptions untuk menyesuaikan nilai minimum pemicu bagi GMSNavigationSpeedAlertSeverity.

(Perhatikan bahwa ini bukan fungsi anggota.)

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

Dokumentasi Fungsi Anggota

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

Menambahkan pemroses.

Pemroses disimpan dengan referensi 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
telepon balik: (GMSRouteStatusCallback) callback

Menetapkan beberapa tujuan untuk navigasi, menggantikan tujuan yang telah ditetapkan sebelumnya.

Callback yang diberikan akan dipanggil dengan GMSRouteStatusOK jika rute ditemukan dari lokasi perangkat ke tujuan yang ditentukan. 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
routingOptions: (GMSNavigationRoutingOptions *) routingOptions
telepon balik: (GMSRouteStatusCallback) callback

Menetapkan beberapa tujuan untuk navigasi, menggantikan tujuan yang telah ditetapkan sebelumnya.

Rute yang ditampilkan dihitung menggunakan opsi pemilihan rute.

Parameter:
tujuanArray titik jalan tujuan.
routingOptionsOpsi yang memengaruhi logika perutean (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
telepon balik: (GMSRouteStatusCallback) callback

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

Rute akan sama, perubahan modulo terhadap lokasi awal pengemudi dan kondisi jalan/lalu lintas. Pengalihan 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. Konfigurasikan 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 dihitung sebelumnya atau rute baru saat terjadi perubahan 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
telepon balik: (GMSRouteInfoCallback) callback

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

Metode ini hanya tersedia bagi pelanggan Layanan Mobilitas yang ditagih oleh Google berdasarkan transaksi. Menampilkan nilai `nil` jika project tidak memiliki izin untuk memanggil API ini.

Parameter:
destinationTitik 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.

Sebagai gantinya, panggil salah satu metode -setDestinations:... dengan daftar tujuan yang baru.

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

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

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

Jika panduan aktif, panduan ini akan otomatis menghentikannya.

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

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

Fitur 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 saat panduan aktif.

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

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

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

ID transaksi akan dihapus pada akhir sesi navigasi. Metode ini hanya tersedia bagi pelanggan Layanan Mobilitas yang ditagih oleh Google berdasarkan transaksi. Menampilkan nilai `nil` jika project tidak memiliki izin untuk memanggil API ini.

Parameter:
transactionIDsID transaksi yang berlaku untuk sesi navigasi saat ini. ID transaksi untuk setiap transaksi yang dapat ditagih harus unik. ID transaksi individual harus berisi minimal satu dan maksimal 64 karakter. Daftar tersebut boleh kosong saat transaksi berakhir (tetapi sesi masih berlangsung).
errorHandlerBlok yang akan dipanggil secara asinkron pada 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 tertentu. 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.

Default-nya adalah TIDAK.

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

Apakah akan menghindari jalan tol saat membuat rute ke tujuan.

Default-nya adalah TIDAK.

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

Apakah akan menghindari kapal feri saat membuat rute ke tujuan.

Nilai defaultnya adalah YES.

Tetapkan pembatasan ganjil genap dengan digit terakhir pelat nomor pengemudi saat ini dan kode negara.

Hal ini memungkinkan kami menentukan rute di sekitar jenis pembatasan jalan tertentu berdasarkan nomor plat kendaraan. Ini hanya akan berlaku untuk panggilan setDestinations yang dilakukan setelah nilai ini ditetapkan. Idealnya, Anda harus menetapkannya segera setelah mendapatkan navigator.

Tetapkan 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 panduan Aktif 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 tiba di titik jalan.

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

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

Jika TIDAK, header dan footer navigasi akan terus ditampilkan setelah halaman dibuka. Header navigasi akan terus menampilkan langkah panduan terakhir 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 setelah kedatangan.

Nilai defaultnya adalah YES.

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

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

Jika ini disetel ke NSTimeIntervalMax, callback pembaruan waktu akan dinonaktifkan. Jika disetel ke nilai negatif, batas default satu detik akan digunakan. Setelan defaultnya adalah satu detik.

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

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

Jika ini disetel ke CLLocationDistanceMax, callback pembaruan jarak akan dinonaktifkan. Jika disetel ke nilai negatif, batas default satu meter akan digunakan. Nilai defaultnya adalah satu meter.

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

Menampilkan estimasi waktu ke tujuan berikutnya.

Ini akan diperbarui berdasarkan posisi perangkat saat ini saat 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 saat panduan aktif.

Menampilkan CLLocationDistanceMax jika tidak ada rute yang tersedia.

- (GMSNavigationPenundaanCategory) delayCategoryToNextDestination [read, assign]

Menampilkan kategori keterlambatan ke tujuan berikutnya.

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

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

- (GMSRouteLeg*) currentRouteLeg [read, assign]

Segmen perjalanan saat ini.

GMSRouteLeg ini akan memiliki posisi awal sebagai posisi perangkat terbaru yang diketahui (dipotong di jalan).

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

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

- (GMSPath*) traveledPath [read, assign]

Jalur yang telah dilalui pengguna di sesi panduan terbaru, yang ditentukan sebagai panduan terakhir kaliAktif disetel ke YA.

Jalur ini terdiri dari lokasi yang diikat oleh jalan yang ditampilkan oleh GMSRoadSnappedLocationProvider dan disederhanakan untuk membuat segmen garis.

Catatan:
Sistem memeriksa sinyal GPS klien untuk mendapatkan data lokasi. Sinyal GPS yang buruk dapat mengakibatkan interpolasi lebih lanjut, yang mungkin menghasilkan rute yang kurang akurat. Jalur ini kosong jika panduan belum pernah dimulai.
- (GMSNavigationVoiceGuidance) voiceGuidance [read, write, assign]

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

Setelan defaultnya adalah GMSNavigationVoiceGuidelinesAlertsAndGuidelines.

Menentukan panduan suara perangkat audio apa saja yang dapat diputar.

Setelan defaultnya adalah GMSVoiceGuideAudioDeviceTypeBluetooth.

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

Menentukan apakah perangkat juga akan 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.

Nilai defaultnya adalah YES.

Mode pencahayaan yang disarankan, berdasarkan waktu dan lokasi perangkat.

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

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

Nilai defaultnya adalah YES.

GMSNavigationSpeedAlertOptions untuk menyesuaikan nilai minimum pemicu bagi GMSNavigationSpeedAlertSeverity.

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

Dengan menyetel nol, Anda tidak akan menerima data feed kecepatan, dan peringatan kecepatan default NavSDK akan menampilkan: peringatan kecepatan menampilkan teks merah saat kecepatan lebih dari 5 mil per jam atau 10 kilometer per jam di atas batas kecepatan, dan menampilkan teks putih dan latar belakang merah saat melaju lebih dari 10 mil per jam atau 20 kilometer per jam.