Omówienie
To główna klasa pakietu SDK Google Navigation na iOS, która umożliwia sterowanie nawigacją do miejsca docelowego oraz uzyskiwanie dostępu do informacji o trasie i postępach.
Te klasa nie obsługują podklas.
Ta klasa nie jest zabezpieczona wątkami. Wszystkie metody muszą być wywoływane z wątku głównego.
Publiczne funkcje członków | |
(Nieważna) | – addListener: |
Dodaje detektora. | |
(wartość logiczna) | – removeListener: |
Usuwa detektor. | |
(Nieważna) | – setDestinations:callback: |
Ustawia wiele miejsc docelowych do nawigacji, zastępując wszystkie wcześniej ustawione miejsca docelowe. | |
(Nieważna) | – setDestinations:routingOptions:callback: |
Ustawia wiele miejsc docelowych do nawigacji, zastępując wszystkie wcześniej ustawione miejsca docelowe. | |
(Nieważna) | – setDestinations:routeToken:callback: |
Konfiguruje wiele miejsc docelowych do nawigacji, wykorzystując token trasy do nawigowania po wcześniej wyliczonej trasie. | |
(Nieważna) | – getRouteInfoForDestination:withRoutingOptions:callback: |
Zwraca informacje o trasie na podstawie strategii routingu: domyślna najlepsza lub krótsza trasa. | |
(wartość GMSNavigationWaypoint do wartości null *) | – continueToNextDestination |
Rola wycofana. | |
(Nieważna) | – clearDestinations |
Usuwa wszystkie wcześniej ustawione miejsca docelowe i usuwa z mapy wszystkie obliczone trasy. | |
(NSTimeInterval) | – timeToWaypoint: |
Zwraca szacowany czas dojazdu do danego punktu pośredniego lub wartość CLTimeIntervalMax, jeśli punkt pośredni nie jest częścią bieżącej trasy. | |
(CLLocationDistance) | – distanceToWaypoint: |
Zwraca szacowaną odległość do danego punktu na trasie lub CLLocationAddressMax, jeśli ten punkt nie jest częścią bieżącej trasy. | |
(Nieważna) | – setTransactionIDs:errorHandler: |
Ustawia i rejestruje na serwerze identyfikatory bieżących transakcji, które mają zastosowanie do zdarzeń nawigacji podczas bieżącej sesji nawigacji. | |
Właściwości | |
WARTOŚĆ | avoidsHighways |
Określa, czy podczas generowania tras do celu podróży unikać autostrad. | |
WARTOŚĆ | avoidsTolls |
Określa, czy unikać dróg płatnych podczas generowania tras do miejsc docelowych. | |
WARTOŚĆ | avoidsFerries |
Określa, czy podczas generowania tras do miejsca docelowego unikać przepraw promowych. | |
GMSNavigationLicensePlateRestriction * | licensePlateRestriction |
Ustaw ograniczenia dotyczące tablic rejestracyjnych z ostatnią cyfrą numeru rejestracyjnego i kodem kraju aktualnego kierowcy. | |
WARTOŚĆ | guidanceActive |
Określa, czy szczegółowe wskazówki są obecnie włączone. | |
WARTOŚĆ | stopGuidanceAtArrival |
Określa, czy wskazówki mają się automatycznie zatrzymywać po wywołaniu funkcji -navigator :didCheckoutAtWaypoint:. | |
NSTimeInterval | timeUpdateThreshold |
Minimalna zmiana szacowanego czasu do następnego miejsca docelowego, która będzie wywoływać metodę navigator:didUpdateRemainingTime: . | |
CLLocationDistance | distanceUpdateThreshold |
Minimalna zmiana szacowanej odległości do następnego miejsca docelowego, która będzie wywoływać metodę navigator:didUpdateRemainingDistance: . | |
NSTimeInterval | timeToNextDestination |
Zwraca szacowany czas podróży do następnego miejsca docelowego. | |
CLLocationDistance | distanceToNextDestination |
Zwraca szacowaną odległość do następnego miejsca docelowego. | |
GMSNavigationDelayCategory | delayCategoryToNextDestination |
Zwraca kategorię opóźnienia do następnego miejsca docelowego. | |
GMSRouteLeg * | currentRouteLeg |
Bieżący etap podróży. | |
NSArray< GMSRouteLeg* > | routeLegs |
Tablica odcinków trasy, z których każdy odpowiada ustalonemu miejscu docelowemu. | |
GMSPath * | traveledPath |
Ścieżka, jaką pokonał użytkownik w czasie ostatniej sesji wskazówek, zdefiniowana jako czas, w którym ostatni raz pokonano ustawienie TAK. | |
GMSNavigationVoiceGuidance | voiceGuidance |
Określa, czy wskazówki głosowe mają być włączone w przypadku alertów o natężeniu ruchu i szczegółowych informacjach o zakręcie. | |
GMSVoiceGuidanceAudioDeviceType | audioDeviceType |
Określa, przez jakie urządzenia audio mogą być odtwarzane wskazówki głosowe. | |
WARTOŚĆ | vibrationEnabled |
Określa, czy urządzenie ma też wibrować podczas odtwarzania alertów głosowych. | |
WARTOŚĆ | sendsBackgroundNotifications |
Określa, czy UILocalPowiadomienia z informacjami pomocniczymi będą wyświetlane, gdy aplikacja działa w tle. | |
GMSNavigationLightingMode | suggestedLightingMode |
Sugerowany tryb oświetlenia na podstawie pory dnia i lokalizacji urządzenia. | |
WARTOŚĆ | shouldDisplayPrompts |
Określa, czy mają być wyświetlane komunikaty o natężeniu ruchu, lepsze trasy i incydenty. | |
GMSNavigationSpeedAlertOptions*. | speedAlertOptions |
GMSNavigationSpeedAlertOptions, która służy do dostosowywania progów aktywujących GMSNavigationPageSpeedAlertSeverity. | |
Powiązane funkcje | |
(Pamiętaj, że nie są to funkcje składowe). | |
typedef void(^) | GMSRouteStatusCallback )(GMSRouteStatus routeStatus) |
Wywoływane w przypadku znalezienia trasy z lokalizacji urządzenia do podanych miejsc docelowych lub nieodnalezienia jej z powodu wskazanego w parametrze RouteStatus. | |
typedef void(^) | GMSRouteInfoCallback )(GMSNavigationRouteInfo *_Nullable routeInfo) |
Wywoływane po wyliczeniu informacji o trasie (szacowany czas dotarcia i odległość) do podanego punktu pośredniego. | |
typedef void(^) | GMSNavigationTransactionIDErrorHandler )(NSError *error) |
Wywoływana, jeśli nie uda się ustawić identyfikatorów transakcji za pomocą parametru setTransactionIDs. |
Dokumentacja funkcji członków
- (void) addListener: | (id< GMSNavigatorListener >) | listener |
Dodaje detektora.
Słuchacz utrzymuje się ze słabym odwołaniem.
- Parametry:
-
detektor Obiekt zgodny z protokołem GMSNavigatorListener
.
- (BOOL) removeListener: | (id< GMSNavigatorListener >) | listener |
Usuwa detektor.
- Parametry:
-
detektor Obiekt zgodny z protokołem GMSNavigatorListener
.
- Zwroty:
- Zwraca wartość TAK, jeśli detektor został usunięty. Zwraca wartość NIE, jeśli obiekt nie jest detektorem.
- (void) setDestinations: | (NSTrack< GMSNavigationWaypoint * > *) | miejsca docelowe | |
wywołanie zwrotne: | (GMSRouteStatusCallback) | oddzwanianie | |
Ustawia wiele miejsc docelowych do nawigacji, zastępując wszystkie wcześniej ustawione miejsca docelowe.
Podane wywołanie zwrotne zostanie wywołane za pomocą GMSRouteStatusOK, jeśli zostanie znaleziona trasa z lokalizacji urządzenia do danego miejsca docelowego. Jeśli przed znalezieniem trasy ustawisz nowe miejsce docelowe, żądanie zostanie anulowane, a wywołanie zwrotne zostanie nawiązane z parametrem GMSRouteStatusCanceled. Jeśli z jakiegokolwiek innego powodu nie będzie można znaleźć trasy, wywołanie zwrotne zostanie nawiązane z odpowiednim stanem błędu.
Wywołanie zwrotne jest zawsze wysyłane asynchronicznie do kolejki głównej.
- (void) setDestinations: | (NSTrack< GMSNavigationWaypoint * > *) | miejsca docelowe | |
routingOptions: | (GMSNavigationRoutingOptions *) | routingOptions | |
wywołanie zwrotne: | (GMSRouteStatusCallback) | oddzwanianie | |
Ustawia wiele miejsc docelowych do nawigacji, zastępując wszystkie wcześniej ustawione miejsca docelowe.
Zwracane trasy są obliczane przy użyciu opcji routingu.
- Parametry:
-
miejsca docelowe Tablica docelowych punktów pośrednich. routingOptions Opcje, które wpływają na logikę routingu (strategię routingu). wywołanie zwrotne Wywoływana w przypadku znalezienia trasy z lokalizacji konsumenta do podanego miejsca docelowego lub niemożności jej znalezienia z powodu wskazanego w parametrze RouteStatus.
- (void) setDestinations: | (NSTrack< GMSNavigationWaypoint * > *) | miejsca docelowe | |
routeToken: | (NSString *) | routeToken | |
wywołanie zwrotne: | (GMSRouteStatusCallback) | oddzwanianie | |
Konfiguruje wiele miejsc docelowych do nawigacji, wykorzystując token trasy do nawigowania po wcześniej wyliczonej trasie.
Trasy będą takie same, zmieniają się w miejscu początkowym dla kierowcy oraz warunki na drodze. Ponowne trasy będą nadal wykonywane na podstawie opcji routingu zakodowanych w tokenie.
Gdy używasz tokena trasy do rozpoczęcia sesji nawigacji, obsługiwane są tylko znaczniki GMSNavigationTravelModeDriving
i GMSNavigationTravelModeTwoWheeler
. Skonfiguruj tryb podróży, ustawiając travelMode
. Jeśli obecny środek transportu nie jest obsługiwany, wywołanie się nie powiedzie, a w wywołaniu zwróconym zostanie GMSRouteStatusTravelModeUnsupported
.
- Parametry:
-
miejsca docelowe Tablica docelowych punktów pośrednich powinna być taka sama jak miejsca docelowe podane do interfejsu RoutesPreferred API, aby uzyskać token trasy. routeToken Ciąg tokena trasy zwrócony przez interfejs RoutesPreferred API. Opcje routingu określone w interfejsie RoutesPreferred API są kodowane w tym tokenie trasy i będą używane do ponownego wygenerowania wcześniej obliczonej trasy lub nowej trasy, gdy nastąpi przekierowanie. wywołanie zwrotne Wywoływana, gdy trasa z lokalizacji konsumenta do podanego miejsca docelowego zostanie znaleziona lub nie można jej znaleźć z powodu wskazanego przez RouteStatus.
- (void) getRouteInfoForDestination: | (GMSNavigationWaypoint *) | miejsce docelowe | |
withRoutingOptions: | (GMSNavigationRoutingOptions *) | routingOptions | |
wywołanie zwrotne: | (GMSRouteInfoCallback) | oddzwanianie | |
Zwraca informacje o trasie na podstawie strategii routingu: domyślna najlepsza lub krótsza trasa.
Ta metoda jest dostępna tylko dla klientów korzystających z usług mobilnych, którzy są rozliczani przez Google na podstawie płatności za transakcję. Zwraca wartość „nil”, jeśli projekt nie ma uprawnień do wywoływania tego interfejsu API.
- Parametry:
-
usługa docelowa | konto usługi docelowej Docelowy punkt na trasie. routingOptions Opcje użyte do pobrania informacji o trasie. Strategia routingu i trasy alternatywne są ignorowane, ponieważ ta metoda zwraca informacje o trasie dla wszystkich strategii routingu. wywołanie zwrotne Wywołanie zwrotne jest wywoływane po otrzymaniu informacji o trasach.
– (do wartości null: GMSNavigationWaypoint *) continueToNextDestination |
Rola wycofana.
Wywołaj jedną z metod -setDestinations
:... z nową listą miejsc docelowych.
Wyraża pierwsze miejsce docelowe z bieżącej listy miejsc docelowych. Po zakończeniu tej rozmowy wskazówki będą podawane w kierunku następnego miejsca docelowego, o ile jest ono dostępne.
- Zwroty:
- wskazówki dotyczące punktów na trasie zmierzają w kierunku, a jeśli nie będzie już żadnych punktów na trasie, zostaną utracone.
- .
- Uwaga:
- Ta wersja została wycofana. Użyj jednej z metod -setDestinations:....
– (void) clearDestinations |
Usuwa wszystkie wcześniej ustawione miejsca docelowe i usuwa z mapy wszystkie obliczone trasy.
Jeśli wskazówki są aktywne, zostaną automatycznie zatrzymane.
– (NSTimeInterval) timeToWaypoint: | (GMSNavigationWaypoint *) | punkt pośredni |
Zwraca szacowany czas dojazdu do danego punktu pośredniego lub wartość CLTimeIntervalMax, jeśli punkt pośredni nie jest częścią bieżącej trasy.
Ta wartość jest aktualizowana na podstawie bieżącej pozycji urządzenia, gdy włączone jest wskazówki.
Zwraca wartość CLTimeIntervalMax, jeśli podany punkt pośredni nie jest miejscem docelowym na bieżącej trasie.
– (CLLocationDISTANCE) distanceToWaypoint: | (GMSNavigationWaypoint *) | punkt pośredni |
Zwraca szacowaną odległość do danego punktu na trasie lub CLLocationAddressMax, jeśli ten punkt nie jest częścią bieżącej trasy.
Ta opcja zostanie uzupełniona na podstawie bieżącej pozycji urządzenia, gdy aktywne będzie wskazówki.
Zwraca wartość CLLocationOdległośćMax, jeśli podany punkt pośredni nie jest miejscem docelowym na bieżącej trasie.
– (void) setTransactionIDs: | (NStablica< NSString * > *) | transactionIDs | |
errorHandler: | (dopuszczalna wartość null GMSNavigationTransactionIDErrorHandler) | errorHandler | |
Ustawia i rejestruje na serwerze identyfikatory bieżących transakcji, które mają zastosowanie do zdarzeń nawigacji podczas bieżącej sesji nawigacji.
Identyfikatory transakcji zostaną wyczyszczone po zakończeniu sesji nawigacji. Ta metoda jest dostępna tylko dla klientów korzystających z usług mobilnych, którzy są rozliczani przez Google na podstawie płatności za transakcję. Zwraca wartość „nil”, jeśli projekt nie ma uprawnień do wywoływania tego interfejsu API.
- Parametry:
-
transactionIDs Identyfikatory transakcji, które mają zastosowanie do bieżącej sesji nawigacji. Identyfikator transakcji musi być niepowtarzalny dla każdej transakcji podlegającej rozliczeniu. Identyfikator pojedynczej transakcji musi zawierać od 1 do 64 znaków. Lista może być pusta po zakończeniu transakcji (ale sesja nadal trwa). errorHandler Blok, który będzie wywoływany asynchronicznie w wątku głównym, jeśli wystąpi błąd, gdy identyfikatory transakcji będą nieprawidłowe.
Dokumentacja funkcji Znajomi i powiązane funkcje
- (typedef void(^ GMSRouteStatusCallback)(GMSRouteStatus routeStatus) [related] |
Wywoływane w przypadku znalezienia trasy z lokalizacji urządzenia do podanych miejsc docelowych lub nieodnalezienia jej z powodu wskazanego w parametrze RouteStatus.
- (typedef void(^ GMSRouteInfoCallback)(GMSNavigationRouteInfo *_Nullable tourInfo)) [related] |
Wywoływane po wyliczeniu informacji o trasie (szacowany czas dotarcia i odległość) do podanego punktu pośredniego.
- Parametry:
-
routeInfo Informacje o trasie do danego miejsca docelowego. W przypadku niepowodzenia obliczeń ma wartość nil.
- (typedef void(^ GMSNavigationTransactionIDErrorHandler)(NSError *error)) [related] |
Wywoływana, jeśli nie uda się ustawić identyfikatorów transakcji za pomocą parametru setTransactionIDs.
Więcej informacji znajdziesz w dokumentacji interfejsu API.
Dokumentacja usługi
- (BOOL) avoidsHighways [read, write, assign] |
Określa, czy podczas generowania tras do celu podróży unikać autostrad.
Domyślna wartość to NO.
– (BOOL) avoidsTolls [read, write, assign] |
Określa, czy unikać dróg płatnych podczas generowania tras do miejsc docelowych.
Domyślna wartość to NO.
- (BOOL) avoidsFerries [read, write, assign] |
Określa, czy podczas generowania tras do miejsca docelowego unikać przepraw promowych.
Wartość domyślna to TAK.
– (GMSNavigationLicensePlateRestriction*) licensePlateRestriction [read, write, assign] |
Ustaw ograniczenia dotyczące tablic rejestracyjnych z ostatnią cyfrą numeru rejestracyjnego i kodem kraju aktualnego kierowcy.
Umożliwia to ominięcie określonych rodzajów ograniczeń dróg na podstawie numeru rejestracyjnego. Będzie to miało zastosowanie tylko do wywołań setDestinations wykonywanych po ustawieniu tej wartości. Najlepiej ustawić tę opcję od razu po pobraniu nawigatora.
Jeśli nie ma ograniczenia dotyczącego tablic rejestracyjnych, ustaw wartość „0” (nil). Wartość domyślna to nil.
– (BOOL) guidanceActive [read, write, assign] |
Określa, czy szczegółowe wskazówki są obecnie włączone.
Jeśli wskazówkiAktywne mają wartość TAK, ale żadna trasa nie jest obecnie dostępna, wskazówki zostaną włączone, gdy trasa stanie się dostępna. Ta właściwość zostanie ustawiona na NO, jeśli zostanie wywołana funkcja clearDestinations lub do punktu pośredniego.
– (BOOL) stopGuidanceAtArrival [read, write, assign] |
Określa, czy wskazówki mają się automatycznie zatrzymywać po wywołaniu funkcji -navigator
:didCheckoutAtWaypoint:.
Jeśli wybierzesz odpowiedź NIE, nagłówek i stopka nawigacji będą nadal wyświetlane po wyświetleniu strony. W nagłówku nawigacji będzie się wyświetlać ostatni etap nawigacji, a pozostały czas i odległość w stopce będą się aktualizować, aż czas/odległość będzie wynosić 0. Oprócz tego będą nadal przeprowadzane aktualizacje dotyczące parametrów -navigator
:didUpdateRemainingTime i -navigator
:didUpdateRemainingReach. Ustaw guidanceActive
na NIE, aby wyłączyć wskazówki i pozostałe aktualizacje czasu/odległości.
Jeśli wybierzesz TAK, po przybyciu do celu guidanceActive
zostanie automatycznie ustawiona opcja NIE.
Wartość domyślna to TAK.
– (NSTimeInterval) timeUpdateThreshold [read, write, assign] |
Minimalna zmiana szacowanego czasu do następnego miejsca docelowego, która będzie wywoływać metodę navigator:didUpdateRemainingTime:
.
Jeśli ustawisz wartość NSTimeIntervalMax, wywołania zwrotne aktualizacji czasu będą wyłączone. Jeśli ustawisz wartość ujemną, zostanie zastosowany domyślny próg wynoszący 1 sekundę. Domyślna wartość to 1 sekunda.
- Uwaga:
- Jeśli żaden detektor nie wdroży
navigator:didUpdateRemainingTime:
, ta wartość jest ignorowana.
– (CLLocationDISTANCE) distanceUpdateThreshold [read, write, assign] |
Minimalna zmiana szacowanej odległości do następnego miejsca docelowego, która będzie wywoływać metodę navigator:didUpdateRemainingDistance:
.
Jeśli ta zasada ma wartość CLLocationOdległośćMax, wywołania zwrotne aktualizacji odległości są wyłączone. Jeśli jest ustawiona na wartość ujemną, używany jest domyślny próg wynoszący 1 metr. Domyślna wartość to 1 metr.
- Uwaga:
- Jeśli żaden detektor nie wdroży
navigator:didUpdateRemainingDistance:
, ta wartość jest ignorowana.
– (NSTimeInterval) timeToNextDestination [read, assign] |
Zwraca szacowany czas podróży do następnego miejsca docelowego.
Ta opcja zostanie uzupełniona na podstawie bieżącej pozycji urządzenia, gdy aktywne będzie wskazówki.
Zwraca wartość CLTimeIntervalMax, jeśli żadna trasa nie jest dostępna.
– (CLLocationDISTANCE) distanceToNextDestination [read, assign] |
Zwraca szacowaną odległość do następnego miejsca docelowego.
Ta opcja zostanie uzupełniona na podstawie bieżącej pozycji urządzenia, gdy aktywne będzie wskazówki.
Zwraca wartość CLLocationReachMax, jeśli żadna trasa nie jest dostępna.
– (GMSNavigationDelayCategory) delayCategoryToNextDestination [read, assign] |
Zwraca kategorię opóźnienia do następnego miejsca docelowego.
Ta opcja zostanie uzupełniona na podstawie bieżącej pozycji urządzenia, gdy aktywne będzie wskazówki.
Jeśli brak trasy lub dane o natężeniu ruchu są niedostępne, zwraca wartość GMSNavigationDelayCategoryNoData.
– (GMSRouteLeg*) currentRouteLeg [read, assign] |
Bieżący etap podróży.
Element GMSRouteLeg będzie mieć pozycję początkową jako ostatnie znane (przypięte) położenie urządzenia.
- (NSTrack<GMSRouteLeg *>*) routeLegs [read, assign] |
Tablica odcinków trasy, z których każdy odpowiada ustalonemu miejscu docelowemu.
– (GMSPath*) traveledPath [read, assign] |
Ścieżka, jaką pokonał użytkownik w czasie ostatniej sesji wskazówek, zdefiniowana jako czas, w którym ostatni raz pokonano ustawienie TAK.
Ścieżka składa się z przypiętych lokalizacji zwróconych przez interfejs GMSRoadSnappedLocationProvider
i uproszczonych jest w celu utworzenia segmentów linii.
- Uwaga:
- System sonduje klienta z sygnałami GPS w celu uzyskania danych o lokalizacji. Słaby sygnał GPS może prowadzić do dalszej interpolacji, która może skutkować mniej precyzyjnymi trasami. Jeśli wskazówki jeszcze się nie rozpoczęła, ta ścieżka jest pusta.
– (GMSNavigationVoiceGuidance) voiceGuidance [read, write, assign] |
Określa, czy wskazówki głosowe mają być włączone w przypadku alertów o natężeniu ruchu i szczegółowych informacjach o zakręcie.
Wartość domyślna to GMSNavigationVoiceGuidanceAlertsAndGuidance.
– (GMSVoiceGuidanceAudioDeviceType) audioDeviceType [read, write, assign] |
Określa, przez jakie urządzenia audio mogą być odtwarzane wskazówki głosowe.
Wartość domyślna to GMSVoiceGuidanceAudioDeviceTypeBluetooth.
– (BOOL) vibrationEnabled [read, write, assign] |
Określa, czy urządzenie ma też wibrować podczas odtwarzania alertów głosowych.
– (BOOL) sendsBackgroundNotifications [read, write, assign] |
Określa, czy UILocalPowiadomienia z informacjami pomocniczymi będą wyświetlane, gdy aplikacja działa w tle.
Wartość domyślna to TAK.
– (GMSNavigationLightingMode) suggestedLightingMode [read, assign] |
Sugerowany tryb oświetlenia na podstawie pory dnia i lokalizacji urządzenia.
– (BOOL) shouldDisplayPrompts [read, write, assign] |
Określa, czy mają być wyświetlane komunikaty o natężeniu ruchu, lepsze trasy i incydenty.
Wartość domyślna to TAK.
– (GMSNavigationSpeedAlertOptions*) speedAlertOptions [read, write, assign] |
GMSNavigationSpeedAlertOptions, która służy do dostosowywania progów aktywujących GMSNavigationPageSpeedAlertSeverity.
Za pomocą tej właściwości możesz dostosować procentowe progi wyzwalające alerty o szybkości, zarówno dla alertów drobnego, jak i dużego. Za pomocą tej metody możesz też dostosować na podstawie czasu próg wyzwalania głównego alertu o szybkości.
Jeśli ustawisz wartość nil, nie będziesz otrzymywać żadnych danych o prędkości kanału, a domyślny alert dotyczący prędkości w pakiecie NavSDK będzie się wyświetlał: czerwony tekst, jeśli prędkość przekracza limit 5 mil/h lub 10 km/h, a przy prędkości powyżej 20 km/h wyświetlany jest biały tekst i czerwone tło.