Niestandardowa nawigacja

Pakiet Navigation SDK udostępnia różne sposoby integracji nawigacji z aplikacją. Na tej stronie wyjaśniamy, czym jest niestandardowa nawigacja i czym różni się od innych typów nawigacji dostępnych w pakiecie Navigation SDK.

Co to jest niestandardowa nawigacja?

Głównym sposobem implementacji pakietu Navigation SDK jest korzystanie z funkcji nawigacji Google, która umożliwia umieszczenie funkcji nawigacji zakręt po zakręcie z użyciem elementów interfejsu i elementów wizualnych udostępnionych przez Google. Jest ona podobna do funkcji nawigacji w aplikacjach Mapy Google. Jeśli potrzebujesz większej elastyczności niż ta, którą zapewnia nawigacja Google, możesz wdrożyć niestandardową nawigację. Dostosowanie nawigacji dotyczy od całkowitego wyeliminowania wskazówek dotyczących skrętów i działania nawigacji tylko w tle do wyświetlania spersonalizowanych wskazówek na ekranie innym niż urządzenie, na którym działa nawigacja. W przypadku korzystania z niestandardowej nawigacji aplikacja wywołuje pakiet SDK nawigacji, aby poprosić o plik danych nawigacji z instrukcjami dojazdu, a potem Ty dostarczasz elementy interfejsu użytkownika i wizualizacje, które użytkownik widzi w ramach nawigacji, oraz nimi zarządzasz. Korzystanie z nawigacji Google jest zazwyczaj łatwiejsze do wdrożenia, ale tworzenie własnej nawigacji niestandardowej pozwala na większą personalizację.

Gdy tworzysz niestandardową nawigację, aplikacja wywołuje Navigation SDK, aby rozpocząć, uruchomić i zatrzymać nawigację, korzystając z tego procesu:

  1. Rozpocznij nawigację. Podobnie jak w przypadku nawigacji Google, nawigacja niestandardowa nadal wymaga utworzenia instancji nawigacji i ustawienia miejsca docelowego. Jednak w przypadku niestandardowej nawigacji musisz najpierw utworzyć sesję nawigacji za pomocą obiektu GMSNavigationService.createNavigationSession, który jest obiektem niebędącym elementem interfejsu użytkownika, a który może działać z kontrolerem widoku lub bez niego.

    Więcej informacji znajdziesz w artykule Włączanie danych nawigacji krok po kroku.

    Obejrzyj wersję demonstracyjną: pobieranie pakietu Navigation SDK zawiera wersję demonstracyjną, którą możesz uruchomić, aby zobaczyć przykład nawigacji, która przełącza się między wskazówkami dojazdu w ramach standardowej nawigacji a nawigacją pokazującą tylko lokalizację urządzenia poruszającą się wzdłuż polilinii drogi.

  2. Aktywna nawigacja. Oto kolejna kluczowa różnica między nawigacją oferowaną przez Google a nawigacją niestandardową. Zamiast przekazywać wskazówki domyślnemu menedżerowi zdarzeń w pakiecie SDK nawigacji, włączasz plik danych z przebiegiem trasy i wdrażasz moduły obsługi zdarzeń. Dzięki temu możesz reagować na zdarzenia opisane w artykule Wysłuchiwanie zdarzeń nawigacji.

  3. Zakończ nawigację. Podobnie jak w przypadku nawigacji Google, nawigacja niestandardowa wymaga również zakończenia nawigacji w sposób najbardziej odpowiedni dla aplikacji.

Kiedy warto korzystać z niestandardowej nawigacji?

W tabeli poniżej opisano kilka scenariuszy korzystania z niestandardowej nawigacji.

Przykładowy scenariusz

Najważniejsze kroki

W przypadku małych urządzeń, takich jak pojazdy dwukołowe, musisz podać instrukcje dla kierowcy w postaci samego tekstu.

Utwórz nawigację i skonfiguruj szczegółowe wskazówki jako dane przesyłane na urządzenie z małym ekranem, podczas gdy nawigacja działa na telefonie komórkowym kierowcy, którego nie widzi.

Chcesz udostępnić aplikację jako usługę samochodową dla kierowców, którzy korzystają z Androida Auto.

  1. Skonfiguruj usługę samochodową.
  2. Skonfiguruj projekt Navigation SDK.
  3. Ustaw nawigatora, jeśli jeszcze tego nie zrobiono.
  4. Włącz plik danych z szczegółowymi wskazówkami dojazdu.
  5. Narysuj mapę na automatycznej stronie aplikacji i uzupełnij pola z skonfigurowanego pliku danych.

Więcej informacji znajdziesz w artykule Włączanie nawigacji w Androidzie Auto.

Kierowcy korzystający z Twojej aplikacji chcą mieć mapę ogólną na większość swojej podróży, a tylko minimalne wskazówki dotyczące jazdy po ulicach miasta.

Aplikacja powinna umożliwiać kierowcom korzystanie z nawigacji Google w dowolnym momencie, bez konieczności zmiany ustawień celu i trybu podróży.