Najczęstsze pytania
Szczegóły usługi
- Jak należy wyświetlać informację o Warunkach korzystania z pakietu Navigation SDK?
- W jakich językach dostępne są wskazówki głosowe?
- Czy kierunek jest zachowywany, gdy użytkownik wyjdzie z trybu nawigacji?
- Czy podczas rozpoczynania lub zmieniania trasy dostępne są polilinie?
- Czy użytkownicy aplikacji muszą mieć zainstalowaną aplikację mobilną Mapy Google?
- Czy pakiet Navigation SDK może identyfikować parkingi w pobliżu restauracji i innych miejsc docelowych?
- Czy pakiet Navigation SDK wyświetla kierunek ruchu na pasach podczas zbliżania się do punktu skrętu?
- Które wersje JDK są obsługiwane przez Navigation SDK?
Sieć i łączność
- Jak pakiet SDK do nawigacji radzi sobie ze słabym połączeniem sieciowym?
- Jak pakiet Navigation SDK radzi sobie ze słabym lub utraconym sygnałem GPS?
- Czy jest dostępny tryb offline?
Dane
- Czy przed rozpoczęciem trasy mogę pobrać wszystkie przystanki/miejsca docelowe w podróży?
- Czy na początku trasy dostępna jest szczegółowa nawigacja?
- W jaki sposób szacowany czas dotarcia na miejsce jest przekazywany użytkownikom aplikacji?
- Czy za pomocą interfejsu
RoadSnappedLocationProvider
można uzyskać przyciągniętą lokalizację użytkownika, jeśli nawigacja nie jest na pierwszym planie? - Czy pakiet Navigation SDK obsługuje geofencing?
- Czy mogę wyłączyć powiadomienia, gdy aplikacja Nawigacja działa w tle?
- Jak wyświetlić dziennik transakcji przechowywany przez Google?
Dostosowywanie interfejsu
- Czy mogę oznaczyć kolorami najlepszą opcję trasy?
- Czy pakiet SDK do nawigacji może wyświetlać szacowany czas dotarcia do miejsca docelowego?
- Jak ukryć aktualizacje szacowanego czasu przyjazdu?
- Jakie opcje dostosowywania interfejsu są dostępne w przypadku kart nagłówka i stopki?
Routing
- Czy mogę podać użytkownikowi konkretną trasę lub usunąć trasy alternatywne?
- Czy mogę wyświetlać użytkownikowi inną etykietę miejsca docelowego niż domyślna lokalizacja docelowa?
- Czy mogę używać Navigation SDK do śledzenia odchyleń od wyznaczonej trasy?
- Czy użytkownik może zakończyć nawigację bez ukończenia trasy?
Symulator
Przepływy pracy
- Jak odrzucić powiadomienie po zamknięciu aktywności zawierającej fragment nawigacji? (tylko Android)
Usługi mobilne
- Czym różni się korzystanie z pakietu Navigation SDK w przypadku klientów korzystających z usług mobilności?
- Jak sprawdzić, czy jestem klientem usług mobilnych?
- Jak rozliczany jest pakiet Navigation SDK w przypadku klientów korzystających z usług mobilności?
- Z których interfejsów API pakietu Navigation SDK powinni korzystać tylko klienci usług mobilności?
- Czy jeśli jestem klientem Usług mobilności, mogę też używać implementacji pakietu Navigation SDK, która nie jest związana z Usługami mobilności?
Szczegóły usługi
-
W aplikacji musi być zaimplementowane okno z informacją o Warunkach usługi pakietu SDK nawigacji, które każdy użytkownik musi zaakceptować. W tym oknie użytkownik może zaakceptować Warunki korzystania z usługi. Plik tekstowy z warunkami jest dostarczany z pakietem Navigation SDK.
Użyj metody
NavigationApi.showTermsAndConditionsDialog
, aby wyświetlić okno z warunkami. - Wszystkie języki obsługiwane przez Mapy Google na urządzenia mobilne są automatycznie dostępne w pakiecie Navigation SDK. Urządzenie ma domyślny język systemu, którego aplikacja nie może zmienić. Aplikacja ma jednak dostęp do ponad 70 języków.
-
Tak. Po uruchomieniu
LocationListener
działa w tle. Aplikacja nadal będzie przyciągać pozycję do drogi i utrzymywać kierunek. -
Tak. Gdy trasa zostanie utworzona lub zmieniona, interfejs
RouteChangeListener
udostępnia polilinie. - Nie, pakiet Navigation SDK nie wymaga zainstalowania na urządzeniu aplikacji Mapy Google na urządzenia mobilne.
- Nie, pakiet Navigation SDK nie udostępnia obecnie tej funkcji.
- Tak. Kierunek ruchu jest dostępny i wyświetlany domyślnie.
- Które wersje JDK są obsługiwane przez pakiet Navigation SDK?
- Pakiet Navigation SDK obsługuje wersje LTS języka Java SE, które są aktywnie obsługiwane przez firmę Oracle. Te wersje są wymienione jako objęte pomocą podstawową na stronie Oracle Java SE Support Roadmap.
Sieć i łączność
- Jak pakiet Navigation SDK radzi sobie ze słabym połączeniem sieciowym?
- Pakiet SDK do nawigacji wstępnie buforuje trasę dla każdej podróży. Wstępnie zapisane informacje obejmują dane o wyznaczaniu trasy na 15–20 minut oraz alternatywne trasy na wypadek, gdyby użytkownik zboczył z trasy. Pakiet Navigation SDK określa przybliżoną pozycję za pomocą GPS i czujników urządzenia.
- Jak pakiet Navigation SDK radzi sobie ze słabym lub utraconym sygnałem GPS?
-
Gdy nawigacja się rozpocznie i pakiet SDK do nawigacji otrzyma sygnał GPS co najmniej raz, w tych sytuacjach wyświetli komunikat „Wyszukiwanie sygnału GPS...”:
- Jeśli od ostatniego odebrania sygnału GPS minęło więcej niż 10 sekund.
- Jeśli pozycja trasy zmieniła się o ponad 500 m od czasu ostatniego otrzymania sygnału GPS.
Jeśli pakiet SDK przez dłuższy czas nie będzie odbierać sygnału GPS, postęp na trasie, wskazywany w aplikacji przez położenie znaku V, może zwalniać, aż do całkowitego zatrzymania. W takim przypadku szewron na mapie pozostanie w miejscu wskazanym przez ostatni sygnał GPS. SDK nie wyłączy automatycznie trybu nawigacji, jeśli nie otrzyma sygnału GPS. Może jednak nie być w stanie udzielać wskazówek, dopóki ponownie nie otrzyma sygnału.
- Czy jest dostępny tryb offline?
- Nie. Pakiet Navigation SDK nie oferuje obecnie trybu offline. Zapewnia jednak wstępnie zapisane w pamięci podręcznej informacje o podróży.
Dane
- Czy przed rozpoczęciem trasy mogę pobrać wszystkie przystanki/miejsca docelowe w podróży?
-
Tak. Aby pobrać wskazówki dojazdu do trasy, wywołaj funkcję
Navigator.getRouteSegments()
. - Czy szczegółowe wskazówki dojazdu są dostępne na początku trasy?
- Tak. Navigation SDK udostępnia listę segmentów trasy. Użytkownik może też przesuwać kartę z wskazówkami w nagłówku, aby zobaczyć każdy manewr.
- Jak szacowany czas dotarcia jest przekazywany użytkownikom aplikacji?
-
Aby przekazywać użytkownikom aplikacji informacje o szacowanym czasie przyjazdu:
- Pobierz czas i odległość dla wszystkich punktów pośrednich za pomocą funkcji
Navigator.getTimeAndDistanceList()
. - Przekaż te informacje do aplikacji klienta, tak jak w przypadku szacowanego czasu dotarcia kierowcy.
- Pobierz czas i odległość dla wszystkich punktów pośrednich za pomocą funkcji
-
Czy za pomocą
RoadSnappedLocationProvider
można uzyskać bieżącą przyciągniętą lokalizację użytkownika, jeśli nawigacja nie jest na pierwszym planie? -
Tak. Aplikacja
RoadSnappedLocationProvider
działa domyślnie w tle. - Czy pakiet Navigation SDK obsługuje geofencing?
-
Nie. W kontekście nawigacji
remainingTimeOrdistanceChangeListener
ma przewagę nad geofencingiem. Geofence może nie uwzględniać geometrii drogi i nie być wyśrodkowany w dokładnym punkcie, do którego nawiguje użytkownik.Tę funkcję możesz przybliżyć za pomocą
remainingTimeOrdistanceChangeListener
.- Ustaw próg, aby określić częstotliwość wywołań zwrotnych.
- Sprawdź pozostałą odległość do celu.
Jeśli na przykład ustawisz próg na 100 m, wywołanie zwrotne nastąpi, gdy odległość od miejsca docelowego zmieni się o 100 m. W miarę zmniejszania się odległości możesz zmniejszyć ten próg, aby częściej otrzymywać wywołania zwrotne. Następnie sprawdź pozostałą odległość, aby określić, czy jesteś wystarczająco blisko miejsca odbioru lub docelowego.
- Czy mogę wyłączyć powiadomienia, gdy aplikacja Nawigacja działa w tle?
-
Tak. Użyj
Navigator.setHeadsUpNotificationEnabled
, aby zarządzać powiadomieniami. Ta metoda ma argument logiczny.FALSE
– wyłącza powiadomienia;TRUE
– włącza powiadomienia. -
Rejestrator transakcji śledzi odbiory i zwroty za pomocą unikalnego identyfikatora, który Google rejestruje na potrzeby analizy produktu. Jeśli jesteś klientem usług mobilnych, Google zaleca wdrożenie
NavigationTransactionRecorder
w celu rejestrowania transakcji.
Dostosowywanie interfejsu
- Czy mogę oznaczyć kolorami najlepszą opcję trasy?
- Nie. Kodowanie kolorami konkretnej opcji trasy nie jest obecnie obsługiwane.
- Czy pakiet Navigation SDK może wyświetlać szacowany czas dotarcia do miejsca docelowego?
-
Tak. Skorzystaj z tych metod:
- Pobierz czas i odległość dla wszystkich punktów pośrednich za pomocą funkcji
Navigator.getTimeAndDistanceList()
. - Ukryj szacowany czas dotarcia do bieżącego punktu trasy za pomocą ikony
NavigationFragment.setEtaCardEnabled(false)
. - Wyświetl szacowany czas dotarcia do miejsca docelowego.
- Pobierz czas i odległość dla wszystkich punktów pośrednich za pomocą funkcji
- Jak ukryć aktualizacje szacowanego czasu przyjazdu?
-
Karty z szacowanym czasem dotarcia możesz wyłączyć, dzwoniąc pod numer
navigationView.setEtaCardEnabled(false)
. -
Użyj
StylingOptions
, aby ustawić stylizację koloru tła. Aby ukryć lub wyświetlić nagłówek i stopkę, użyj funkcji członkowskichsetHeaderEnabled
isetFooterEnabled
elementuNavigationFragment
.
Routing
- Czy mogę podać użytkownikowi konkretną trasę lub usunąć trasy alternatywne?
- Nie. Domyślnie podawanych jest kilka tras, a najszybsza z nich ma priorytet. Na trasę domyślną możesz wpływać, dodając do żądania preferencje, np. „unikaj autostrad i dróg płatnych”. Dodanie punktów pośrednich również wpływa na trasę.
- Czy mogę wyświetlać użytkownikowi aplikacji inną etykietę miejsca docelowego niż domyślna lokalizacja docelowa?
-
Tak. Utwórz
Marker
z niestandardowym tytułem miejsca docelowego i współrzędnymi geograficznymi. Pakiet SDK Navigation wyświetla niestandardowy tytuł i współrzędne naNavigationMap
. - Czy mogę używać pakietu Navigation SDK do śledzenia odchyleń od wyznaczonej trasy?
-
Tak. Używaj
Navigator.setRouteChangedListener
, aby otrzymywać powiadomienia o zmianach trasy lub nowych rekomendacjach:- Zarejestruj odbiornik, który sprawdza położenie urządzenia na trasie za pomocą metody
Navigator.setRouteChangedListener
. - Dodaj kod do funkcji obsługi zdarzenia wywołania zwrotnego,
onRouteChanged
:- Wysyłanie do użytkownika aplikacji wiadomości z aktualnymi informacjami o szacowanym czasie dotarcia i odległości.
- śledzić lokalizację urządzenia,
- [opcjonalnie] Dodaj inne funkcje wymagane przez aplikację do obsługi sytuacji, gdy użytkownik zboczy z wyznaczonej trasy.
- Zarejestruj odbiornik, który sprawdza położenie urządzenia na trasie za pomocą metody
-
Tak. Aby zatrzymać nawigację, wywołaj metodę
Navigator.stopGuidance()
.
Symulator
- Czy symulator obsługuje zmiany trasy?
-
Tak. Wywołaj funkcję
simulateLocationsAlongNewRoute
, aby zasymulować podróż, która obejmuje zmianę trasy. MetodasimulateLocationsAlongExistingRoute
ignoruje zmiany w dotychczasowej trasie.
Przepływy pracy
- Jak odrzucić powiadomienie po zamknięciu aktywności zawierającej fragment nawigacji?
-
Powiadomienie o nawigacji pozostaje widoczne podczas nawigacji, gdy aktywność jest zamknięta. Gdy pojazd dotrze do celu, nawigacja zostanie zatrzymana, a powiadomienie zniknie.
Aby obsługiwać kliknięcia powiadomienia, użyj
Navigator.startGuidance(intent resumeIntent)
.resume intent
jest uruchamiane, gdy użytkownik aplikacji kliknie powiadomienie. Zazwyczaj funkcjaNavigator.startguidance(getIntent())
jest wywoływana z głównego działania, które jest ponownie wywoływane, gdy użytkownik aplikacji kliknie powiadomienie.
Usługi mobilne
Usługi mobilne Google Maps Platform to zbiór interfejsów API i pakietów SDK, które pomagają zaspokajać potrzeby firm transportowych i logistycznych. Klienci korzystający z usług mobilnych używają zwykle pakietu Navigation SDK w połączeniu z powiązanymi usługami do optymalizacji tras, wysyłania zleceń, śledzenia zadań, analizy floty i innych celów. W przypadku klientów korzystających z usług mobilności pakiet SDK do nawigacji jest też rozliczany inaczej. Więcej informacji znajdziesz w dokumentacji usług mobilnych.
Usługi mobilności są obecnie dostępne tylko dla wybranych klientów. Aby uzyskać więcej informacji, skontaktuj się z przedstawicielem handlowym.
ReportBillableEvent
. Tylko klienci korzystający z usług mobilnych powinni dzwonić za pomocą metody ReportBillableEvent
.
W pakiecie Navigation SDK jest kilka interfejsów API, które są przeznaczone wyłącznie dla klientów usług mobilności, którzy są rozliczani przez Google za każdą transakcję. Jeśli nie jesteś klientem usług mobilnych, te metody nie działają:
Tak, klienci Mobility Services mogą korzystać zarówno z implementacji pakietu Navigation SDK w ramach Mobility Services, jak i z implementacji niezwiązanych z tymi usługami. W aplikacji możesz jednak używać tylko jednego typu implementacji naraz. Musisz też utworzyć nowy projekt Google Cloud, konto rozliczeniowe i klucz interfejsu API, które będą oddzielone od tych, których używasz w implementacji usług mobilnych. Więcej informacji znajdziesz w omówieniu konfiguracji pakietu Navigation SDK.
Aby dowiedzieć się więcej o korzystaniu z implementacji pakietu Navigation SDK innej niż Usługi mobilności, w tym o migrowaniu aplikacji z jednego typu implementacji na inny, skontaktuj się z przedstawicielem, który zajmuje się Twoim kontem Google.
Uwaga: jeśli nie jesteś jeszcze klientem usług mobilnych i chcesz dowiedzieć się więcej o kolekcji interfejsów API i pakietów SDK usług mobilnych, skontaktuj się z zespołem sprzedaży Google Maps Platform.