Najczęstsze pytania
Szczegóły usługi
- Jak należy wyświetlać powiadomienie o Warunkach korzystania z usługi w przypadku pakietu SDK do nawigacji?
- Które języki obsługuje nawigacja głosowa?
- Czy kierunek jest zachowany, gdy użytkownik opuszcza tryb nawigacji?
- Czy linie wielowymiarowe są dostępne podczas tworzenia lub zmieniania trasy?
- Czy użytkownicy aplikacji muszą mieć zainstalowaną aplikację mobilną Mapy Google?
- Czy pakiet SDK do nawigacji może wskazywać parkingi w pobliżu restauracji i innych miejsc docelowych?
- Czy Navigation SDK pokazuje kierunek ruchu na pasach podczas zbliżania się do punktu skrętu?
- Które wersje pakietu JDK obsługuje pakiet SDK nawigacji?
Sieć i łączność
- Jak pakiet SDK nawigacji radzi sobie z problemami z połączeniem z internetem?
- Jak pakiet SDK do nawigacji radzi sobie z niestabilnym lub zanikanym sygnałem GPS?
- Czy jest dostępny tryb offline?
Dane
- Czy przed rozpoczęciem trasy mogę pobrać wszystkie przystanki/miejsca docelowe?
- Czy na początku trasy dostępne są szczegółowe wskazówki dojazdu?
- W jaki sposób użytkownicy aplikacji są informowani o szacowanym czasie przybycia?
- Czy
RoadSnappedLocationProvider
może być używany do uzyskiwania bieżącej lokalizacji użytkownika, jeśli nawigacja nie jest na pierwszym planie? - Czy pakiet SDK do nawigacji obsługuje geofencing?
- Czy mogę wyłączyć powiadomienia, gdy aplikacja Nawigacja działa w tle?
- Jak wyświetlić dziennik transakcji przechowywany przez Google?
Personalizacja interfejsu
- Czy mogę oznaczyć kolorem najlepszą opcję trasy?
- Czy pakiet SDK do nawigacji może wyświetlać przewidywany czas dotarcia do miejsca docelowego?
- Jak mogę ukryć informacje o przewidywanym czasie dotarcia?
- Jakie opcje dostosowywania interfejsu są dostępne w przypadku kart nagłówka i stopki?
Routing
- Czy mogę udostępnić użytkownikowi konkretną trasę lub usunąć alternatywne trasy?
- Czy mogę wyświetlić użytkownikowi inną etykietę miejsca docelowego niż domyślna lokalizacja docelowa?
- Czy mogę używać pakietu SDK do nawigacji do śledzenia odchyleń od zdefiniowanej ścieżki?
- Czy użytkownik może zamknąć nawigację bez ukończenia trasy?
Symulator
Przepływy pracy
Usługi mobilności
- Czym różni się korzystanie z pakietu SDK do nawigacji w przypadku klientów usług mobilnych?
- Jak sprawdzić, czy jestem klientem Mobility Services?
- Jak naliczane są opłaty za pakiet SDK do nawigacji w przypadku klientów usług mobilnych?
- Których interfejsów API interfejsów Navigation SDK powinni używać tylko klienci Mobility Services?
- Czy jeśli jestem klientem Usług mobilnych, mogę też używać pakietu SDK Nawigacji w innej implementacji niż Usługi mobilne?
Szczegóły usługi
-
Aplikacja musi zawierać okno z powiadomieniem o Warunkach korzystania z usługi w pakiecie SDK nawigacji, które musi zaakceptować każdy użytkownik. Ten dialog umożliwia użytkownikowi zaakceptowanie Warunków korzystania z usługi. Warunki są dostępne w pliku tekstowym dołączonym do Navigation SDK.
Aby wyświetlić okno dialogowe z warunkami, użyj metody
NavigationApi.showTermsAndConditionsDialog
. - Wszystkie języki obsługiwane przez Google Maps Mobile są automatycznie dostępne w przypadku pakietu SDK do nawigacji. Urządzenie ma domyślny język systemowy, którego aplikacja nie może zmienić. Aplikacja ma jednak dostęp do ponad 70 języków.
-
Tak. Po uruchomieniu
LocationListener
będzie nadal działać w tle. Aplikacja nadal przypina pozycję do drogi i utrzymuje kierunek. -
Tak. Gdy tworzysz lub zmieniasz trasę, usługa
RouteChangeListener
udostępnia linie wielokątne. - Nie. Pakiet SDK Nawigacji nie wymaga instalowania na urządzeniu aplikacji mobilnej Mapy Google.
- Nie, obecnie pakiet SDK Nawigacji nie obsługuje tej funkcji.
- Tak. Kierunek ruchu jest dostępny i wyświetlany domyślnie.
- Które wersje JDK obsługuje pakiet SDK nawigacji?
- Pakiet Navigation SDK obsługuje wersje LTS Java SE, które są aktywnie obsługiwane przez firmę Oracle. Te wersje są wymienione jako objęte wsparciem najwyższego poziomu w mapie drogowej wsparcia Oracle Java SE.
Sieć i łączność
- Jak pakiet SDK Nawigacji radzi sobie z problemami z połączeniem z siecią?
- Pakiet SDK do nawigacji wstępnie przechowuje w pamięci podręcznej trasę dla każdej podróży. Informacje w cache obejmują informacje o trasie na 15–20 minut oraz alternatywne trasy na wypadek, gdyby użytkownik zboczył z trasy. Pakiet SDK nawigacji określa przybliżoną pozycję za pomocą GPS-a i czujników urządzenia.
- Jak pakiet SDK do nawigacji radzi sobie z niestabilnym lub zanikającym sygnałem GPS?
-
Po rozpoczęciu nawigacji i po tym, jak Navigation SDK otrzyma sygnał GPS co najmniej raz, wyświetli komunikat „Szukanie sygnału GPS…” w tych sytuacjach:
- jeśli od ostatniego otrzymania sygnału GPS minęło ponad 10 sekund.
- Jeśli od ostatniego otrzymania sygnału GPS pozycja nawigacji zmieniła się o ponad 500 m.
Jeśli pakiet SDK przez dłuższy czas nie odbiera sygnału GPS, postęp na trasie, wskazywany w aplikacji przez pozycję strzałki, może zwolnić, aż do całkowitego zatrzymania. W takim przypadku strzałka na mapie pozostanie w miejscu wskazanym przez ostatni sygnał GPS. Zestaw SDK nie wyjdzie automatycznie z trybu nawigacji z powodu braku sygnału GPS. Jednak może nie być w stanie udzielić wskazówek, dopóki nie otrzyma sygnału.
- Czy jest dostępny tryb offline?
- Nie, pakiet SDK Nawigacji nie oferuje obecnie trybu offline. Pakiet SDK udostępnia jednak wcześniej zapisane w pamięci podręcznej informacje dotyczące trasy.
Dane
- Czy mogę pobrać wszystkie przystanki/miejsca docelowe na trasie przed rozpoczęciem podróży?
-
Tak. Aby uzyskać wskazówki dojazdu do miejsca docelowego, wybierz
Navigator.getRouteSegments()
. - Czy na początku trasy dostępne są wskazówki dojazdu zakręt po zakręcie?
- Tak. Pakiet SDK nawigacji udostępnia listę segmentów trasy. Użytkownik może też przesuwać kartę z kierunkami w nagłówku, aby zobaczyć każdy manewr.
- Jak użytkownicy aplikacji są informowani o przewidywanym czasie dotarcia?
-
Aby udostępnić użytkownikom aplikacji informacje o przewidywanym czasie dotarcia:
- Pobierz czas i odległość dla wszystkich punktów drogi za pomocą funkcji
Navigator.getTimeAndDistanceList()
. - Przekaż te informacje do aplikacji klienta, tak jak w przypadku przewidywanego czasu przybycia kierowcy.
- Pobierz czas i odległość dla wszystkich punktów drogi za pomocą funkcji
-
Czy można użyć
RoadSnappedLocationProvider
do uzyskania bieżącej lokalizacji użytkownika, jeśli nawigacja nie jest na pierwszym planie? -
Tak. Domyślnie
RoadSnappedLocationProvider
działa w tle. - Czy pakiet SDK do nawigacji obsługuje geofencing?
-
Nie. W kontekście nawigacji
remainingTimeOrdistanceChangeListener
ma przewagę nad geofence. Geofence może nie uwzględniać geometrii drogi i nie być wyśrodkowany na dokładnym punkcie, do którego użytkownik się przemieszcza.Możesz z nią poznać przybliżone wyniki, korzystając z funkcji
remainingTimeOrdistanceChangeListener
.- Ustaw próg, aby określić częstotliwość wywołań zwrotnych.
- Sprawdź pozostałą odległość do miejsca docelowego.
Jeśli np. ustawisz próg na 100 m, otrzymasz połączenie zwrotne, gdy odległość do miejsca docelowego zmieni się o 100 m. W miarę zmniejszania się odległości możesz zmniejszać ten próg do mniejszej wartości i otrzymywać częstsze połączenia zwrotne. Następnie sprawdź pozostały dystans, aby określić, czy jesteś wystarczająco blisko miejsca odbioru lub zwrotu.
- 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 typu logicznego.FALSE
wyłącza powiadomienia;TRUE
włącza powiadomienia. -
Rejestrator transakcji śledzi odbiory i dostawy za pomocą unikalnego identyfikatora, który Google rejestruje na potrzeby analizy produktu. Jeśli jesteś klientem Usług mobilnych, Google zaleca wdrożenie
NavigationTransactionRecorder
, aby rejestrować transakcje.
Personalizacja interfejsu
- Czy mogę oznaczyć kolorem najlepszą opcję trasy?
- Nie. Obecnie nie można nadać koloru konkretnej opcji trasy.
- Czy pakiet SDK do nawigacji może wyświetlać szacowany czas dotarcia do miejsca docelowego?
-
Tak. Wykonaj jedną z tych czynności:
- Pobierz czas i odległość dla wszystkich punktów drogi za pomocą funkcji
Navigator.getTimeAndDistanceList()
. - Ukryj ETA bieżącego punktu docelowego, używając
NavigationFragment.setEtaCardEnabled(false)
. - Wyświetlanie czasu dojazdu do miejsca docelowego.
- Pobierz czas i odległość dla wszystkich punktów drogi za pomocą funkcji
- Jak mogę ukryć aktualizacje szacowanego czasu dotarcia?
-
Możesz wyłączyć karty ETA, dzwoniąc pod numer
navigationView.setEtaCardEnabled(false)
. -
Użyj
StylingOptions
, aby ustawić styl koloru tła. Aby ukryć lub wyświetlić nagłówek i stopkę, użyj funkcji członkowskichsetHeaderEnabled
isetFooterEnabled
klasyNavigationFragment
.
Routing
- Czy mogę podać użytkownikowi konkretną trasę lub usunąć alternatywne trasy?
- Nie. Domyślnie podawane są liczne trasy, a priorytet ma najszybsza z nich. Możesz wpływać na domyślną trasę, dodając do swojej prośby preferencje, takie jak „omijaj autostrady i drogi płatne”. Dodanie punktów pośrednich również wpływa na trasę.
- Czy mogę wyświetlić 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 nawigacji wyświetla tytuł niestandardowy i współrzędne naNavigationMap
. - Czy mogę używać pakietu SDK do nawigacji, aby śledzić odstępstwa od zdefiniowanej ścieżki?
-
Tak. Użyj opcji
Navigator.setRouteChangedListener
, aby otrzymywać powiadomienia, gdy trasa się zmieni lub zostanie zalecana nowa trasa:- Zarejestruj listenera, który sprawdza pozycję urządzenia na trasie, używając metody
Navigator.setRouteChangedListener
. - Dodaj kod do modułu obsługi wywołania zwrotnego
onRouteChanged
:- Wyślij wiadomość do użytkownika aplikacji z aktualnym szacowanym czasem dotarcia i informacjami o odległości.
- śledzić lokalizację urządzenia;
- [Opcjonalnie] Dodaj inne funkcje wymagane przez aplikację, aby obsłużyć przypadki, gdy użytkownik zjeżdża z przeznaczonej trasy.
- Zarejestruj listenera, który sprawdza pozycję urządzenia na trasie, używając metody
-
Tak. Aby zatrzymać nawigację, wywołaj metodę
Navigator.stopGuidance()
.
Symulator
- Czy symulator obsługuje zmiany trasy?
-
Tak. Wywołaj funkcję
simulateLocationsAlongNewRoute
, aby symulować podróż, która obejmuje zmianę trasy. MetodasimulateLocationsAlongExistingRoute
ignoruje zmiany w dotychczasowej trasie.
Przepływy pracy
- Jak zamknąć powiadomienie po zamknięciu aktywności, która zawiera fragment nawigacji?
-
Powiadomienie nawigacji pozostaje widoczne podczas nawigacji, gdy aktywność jest zamknięta. Gdy pojazd dotrze do miejsca docelowego, nawigacja się zatrzyma, a powiadomienie zniknie.
Aby obsłużyć kliknięcia powiadomienia, użyj elementu
Navigator.startGuidance(intent resumeIntent)
. Aktywuje się, gdy użytkownik aplikacji kliknie powiadomienie.resume intent
Zazwyczaj metodaNavigator.startguidance(getIntent())
jest wywoływana z głównej metody Activity, która wywołuje metodę Activity, gdy użytkownik aplikacji kliknie powiadomienie.
Usługi mobilności
Usługi mobilności Google Maps Platform to zbiór interfejsów API i pakietów SDK, które pomagają spełniać potrzeby firm transportowych i logistycznych. W przypadku klientów korzystających z Mobility Services pakiet SDK Nawigacji jest zwykle używany w połączeniu z powiązanymi usługami do optymalizacji trasy, dysponowania, śledzenia zadań, analizy floty itp. Pakiet SDK do nawigacji jest też fakturowany inaczej w przypadku klientów usług mobilnych. Więcej informacji znajdziesz w dokumentacji Usług mobilnych.
Produkty mobilne są obecnie dostępne tylko dla wybranych klientów. Aby uzyskać więcej informacji, skontaktuj się z przedstawicielem ds. sprzedaży.
ReportBillableEvent
. Metodę ReportBillableEvent
powinni stosować tylko klienci Usług mobilnych.
W pakiecie SDK nawigacji jest kilka interfejsów API przeznaczonych tylko dla klientów Usług mobilnych, którzy są obciążani przez Google za każdą transakcję. Jeśli nie korzystasz z usług mobilnych, te metody nie będą działać:
Tak. Klienci Usług mobilnych mogą korzystać z implementacji pakietu SDK nawigacji zarówno w Usługach mobilnych, jak i poza nimi. W aplikacji możesz jednak używać tylko jednego typu implementacji naraz. Musisz też utworzyć nowy projekt Google Cloud, konto rozliczeniowe i klucz API, które będą odrębne od tych, których używasz w ramach implementacji usług mobilnych. Więcej informacji znajdziesz w omówieniu konfiguracji pakietu SDK na potrzeby nawigacji.
Więcej informacji o implementacji pakietu SDK nawigacji w innych usługach niż Mobilność, w tym o przenoszeniu aplikacji z jednego typu implementacji do innego, znajdziesz u swojego opiekuna klienta Google.
Uwaga: jeśli nie jesteś jeszcze klientem Mobility Services i chcesz dowiedzieć się więcej o kolecji interfejsów API i pakietów SDK Mobility Services, skontaktuj się z działem sprzedaży Google Maps Platform.