Najczęstsze pytania

Szczegóły usługi

Sieć i połączenia

Dane

Dostosowywanie interfejsu

Routing

Symulator

Przepływy pracy

Usługi mobilne

Szczegóły usługi

Aplikacja musi zawierać okno z powiadomieniem o Warunkach korzystania z usługi w Navigation SDK, które musi zaakceptować każdy użytkownik. To okno daje użytkownikowi możliwość zaakceptowania Warunków korzystania z usługi. Pakiet SDK Nawigacji zawiera plik tekstowy z warunkami. Aby wyświetlić okno 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 działać w tle. Aplikacja nadal przypina pozycję do drogi i utrzymuje kierunek.

Tak. Gdy trasa zostanie utworzona lub zmieniona, usługa RouteChangeListener udostępnia linie wielokątne.

Nie. Pakiet SDK Nawigacji nie wymaga instalowania aplikacji mobilnej Map Google na urządzeniu.
Nie, pakiet SDK Nawigacji nie obsługuje obecnie tej funkcji.
Tak. Kierunek ruchu jest dostępny i wyświetlany domyślnie.
Które wersje pakietu JDK obsługuje pakiet SDK nawigacji?
Pakiet Navigation SDK obsługuje wersje LTS Java SE, które są aktywnie obsługiwane przez Oracle. Te wersje są wymienione jako objęte pierwszeństwo w zakresie pomocy w mapie drogowej pomocy Oracle Java SE.

Sieć i połączenia

Jak pakiet SDK do 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 zszedł z trasy. Navigation SDK określa przybliżoną pozycję za pomocą GPS-u i czujników urządzenia.
Jak pakiet Navigation SDK radzi sobie ze słabym lub nieobecnym sygnałem GPS?

Gdy nawigacja zostanie uruchomiona i platforma Navigation SDK otrzyma sygnał GPS co najmniej raz, wyświetli komunikat „Szukanie sygnału GPS…” w tych sytuacjach:

  • Jeśli od ostatniego odebrania 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 otrzymuje sygnału GPS, postęp na trasie, wskazywany w aplikacji przez pozycję strzałki, może się zwolnić, aż do całkowitego zatrzymania. W takim przypadku strzałka na mapie pozostanie w miejscu wskazanym przez ostatni sygnał GPS. SDK nie wyłączy automatycznie trybu nawigacji z powodu braku sygnału GPS. Nie będzie jednak 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 wstępnie zarchiwizowane informacje dotyczące trasy.

Dane

Czy przed rozpoczęciem podróży mogę pobrać wszystkie przystanki/miejsca docelowe?

Tak. Aby uzyskać wskazówki dojazdu, zadzwoń na numer Navigator.getRouteSegments().

Czy na początku trasy dostępne są szczegółowe wskazówki dojazdu?
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:

  1. Pobierz czas i odległość dla wszystkich punktów pośrednich, używając funkcji Navigator.getTimeAndDistanceList().
  2. Przekaż te informacje aplikacji klienta w taki sam sposób jak w przypadku szacowanego czasu dotarcia kierowcy.
Czy można użyć RoadSnappedLocationProvider do uzyskania bieżącej lokalizacji użytkownika, jeśli nawigacja nie jest na pierwszym planie?

Tak. Aplikacja RoadSnappedLocationProvider domyślnie działa w tle.

Czy pakiet SDK do nawigacji obsługuje geofencing?

Nie. W kontekście nawigacji remainingTimeOrdistanceChangeListenerma 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 niej korzystać za pomocą funkcji remainingTimeOrdistanceChangeListener.

  1. Ustaw próg, aby określić częstotliwość wywołań zwrotnych.
  2. Sprawdź pozostałą odległość do celu.

Jeśli na przykład ustawisz próg na 100 m, otrzymasz połączenie zwrotne, gdy odległość do celu 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. Aby zarządzać powiadomieniami, użyj Navigator.setHeadsUpNotificationEnabled. Ta metoda ma argument logiczny. FALSEwyłącza powiadomienia; TRUEwłącza powiadomienia.

Rejestrator transakcji śledzi odbiory i dostawy za pomocą unikalnego identyfikatora, który Google rejestruje na potrzeby analizy produktu. Jeśli jesteś klientem Mobility Services, Google zaleca wdrożenie NavigationTransactionRecorder, aby rejestrować transakcje.

Dostosowywanie interfejsu

Czy mogę oznaczyć kolorem najlepszą opcję trasy?
Nie. Obecnie nie można przypisać koloru do konkretnej opcji trasy.
Czy pakiet SDK do nawigacji może wyświetlać szacowany czas dotarcia do miejsca docelowego?

Tak. Użyj jednej z tych metod:

  1. Pobierz czas i odległość dla wszystkich punktów pośrednich, używając funkcji Navigator.getTimeAndDistanceList().
  2. Ukryj szacowany czas dotarcia do bieżącego punktu kontrolnego, używając opcji NavigationFragment.setEtaCardEnabled(false).
  3. Wyświetl szacowany czas dotarcia do miejsca docelowego.
Jak mogę ukryć aktualizacje szacowanego czasu dotarcia?

Aby wyłączyć karty ETA, zadzwoń pod numer navigationView.setEtaCardEnabled(false).

Jakie opcje dostosowywania interfejsu są dostępne w przypadku kart nagłówka i stopki?

Aby ustawić styl koloru tła, użyj atrybutu StylingOptions. Aby ukryć lub wyświetlić nagłówek i stopkę, użyj funkcji członkowskich setHeaderEnabledsetFooterEnabled obiektu NavigationFragment.

Routing

Czy mogę podać użytkownikowi konkretną trasę lub usunąć alternatywne trasy?
Nie. Domyślnie podawane są liczne trasy, a najszybsza z nich ma najwyższy priorytet. Możesz wpływać na domyślną trasę, dodając do swojego żądania preferencje, takie jak „unikaj autostrad i dróg płatnych”. Dodawanie 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 miejsca docelowego?

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 na NavigationMap.

Czy mogę używać pakietu Navigation SDK do śledzenia odchyleń od zdefiniowanej ścieżki?

Tak. Użyj opcji Navigator.setRouteChangedListener, aby otrzymywać powiadomienia o zmianie trasy lub rekomendacji nowej trasy:

  1. Zarejestruj listenera, który sprawdza położenie urządzenia na trasie, używając metody Navigator.setRouteChangedListener.
  2. Dodaj kod do funkcji 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ć sytuację, gdy użytkownik zjeżdża z przeznaczonej trasy.
Czy użytkownik może zamknąć nawigację bez ukończenia trasy?

Tak. Aby zatrzymać nawigację, wywołaj metodę Navigator.stopGuidance().

Symulator

Czy symulator obsługuje zmiany trasy?

Tak. Zadzwoń na numer simulateLocationsAlongNewRoute, aby symulować podróż z zaplanowaną zmianą trasy. Metoda simulateLocationsAlongExistingRouteignoruje zmiany w dotychczasowej trasie.

Przepływy pracy

Jak odrzucić powiadomienie po zamknięciu aktywności zawierającej 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 funkcja Navigator.startguidance(getIntent()) jest wywoływana z głównej metody Activity, która wywołuje metodę Activity, gdy użytkownik aplikacji kliknie powiadomienie.

Usługi mobilne

Czym różni się korzystanie z pakietu SDK do nawigacji w przypadku klientów korzystających z Usług mobilnych?

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 usług mobilności pakiet SDK nawigacji jest zwykle używany w połączeniu z powiązanymi usługami do optymalizacji tras, dysponowania, śledzenia zadań, analizy floty itp. Pakiet SDK do nawigacji jest też obliczany inaczej w przypadku klientów usług mobilności. 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 handlowym.

Jak mogę sprawdzić, czy jestem klientem Mobility Services?
Jeśli nie masz pewności, czy jako klient usług mobilnościowych implementujesz obecnie pakiet SDK nawigacji, poszukaj w kodzie wywołania ReportBillableEvent. Metodę ReportBillableEvent powinni stosować tylko klienci Mobility Services.

Jak rozliczany jest pakiet SDK do nawigacji w przypadku klientów usług mobilności?
W przypadku klientów Usług mobilnych rozliczenia i ceny pakietu SDK nawigacji zależą od umowy o świadczenie usług zawartej z Google Maps Platform. Informacje o tym, jak sprawdzić, czy prawidłowe są rozliczenia za wdrożenie Usług mobilnych, znajdziesz w artykule Weryfikacja rozliczeń. Aby uzyskać więcej informacji o płatnościach za usługi mobilne, skontaktuj się z przedstawicielem handlowym.

Których interfejsów API pakietu SDK nawigacji powinni używać tylko klienci usług mobilności?

W pakiecie Navigation SDK jest kilka interfejsów API przeznaczonych tylko dla klientów Mobility Services, którzy są obciążani przez Google za każdą transakcję. Jeśli nie jesteś klientem Usług mobilnych, te metody nie są dostępne:

Czy jeśli jestem klientem Mobility Services, mogę też używać pakietu SDK Nawigacji w innej implementacji niż Mobility Services?

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 nie są używane w ramach implementacji Usług mobilnych. Więcej informacji znajdziesz w omówieniu konfiguracji pakietu SDK Nawigacji.

Aby dowiedzieć się więcej o implementacji pakietu SDK nawigacji w innych usługach niż Mobilność, w tym o przenoszeniu aplikacji z jednego typu implementacji do innego, skontaktuj się z przedstawicielem, który zajmuje się Twoim kontem Google.

Uwaga: jeśli nie jesteś jeszcze klientem Mobility Services i chcesz dowiedzieć się więcej o interfejsach API i pakietach SDK Mobility Services, skontaktuj się z działem sprzedaży Google Maps Platform.