Niestandardowa nawigacja

Pakiet Navigation SDK udostępnia różne sposoby integracji nawigacji z aplikacją. Na tej stronie dowiesz się, 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?

Podstawowym sposobem implementacji pakietu Navigation SDK jest korzystanie z funkcji nawigacji Google, która umożliwia umieszczenie nawigacji zakręt po zakręcie z użyciem elementów interfejsu i wizualizacji 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 różnych czynności, od całkowitego wyłączenia 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 krok po kroku. Następnie udostępniasz elementy interfejsu użytkownika i wizualizacje, które widzi użytkownik podczas korzystania z 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 wystąpienia nawigacji i ustawienia miejsca docelowego. W przypadku niestandardowej nawigacji możesz to jednak osiągnąć, najpierw inicjując 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 o szczegółach dotyczących danych przekazywanych przez kanał 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ą, która pokazuje tylko lokalizację urządzenia poruszającego się po 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 Navigation SDK, skonfiguruj detektor zdarzeń, aby wyświetlać szczegółowe wskazówki dojazdu, wdrażając protokół GMSNavigatorListener, a potem implementując przetwarzacze 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 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ć kierowcy instrukcje w postaci 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 Apple CarPlay.

  1. Skonfiguruj usługę samochodową.
  2. Skonfiguruj projekt Navigation SDK.
  3. Ustaw nawigację, jeśli jeszcze tego nie zrobiono.
  4. Skonfiguruj odbiornik wskazówek dojazdu.
  5. Narysuj mapę na automatycznej karcie aplikacji i uzupełnij pola danymi z skonfigurowanego pliku danych.

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

Kierowcy korzystający z Twojej aplikacji chcą mieć mapę ogólną na większość swojej podróży, a na ulicach w mieście chcą tylko minimalnych wskazówek zakręt po zakręcie.

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