Niestandardowa nawigacja

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

Czym jest niestandardowa nawigacja?

Głównym sposobem wdrożenia pakietu Navigation SDK jest użycie nawigacji Google, która umożliwia osadzenie nawigacji zakręt po zakręcie korzystającej z elementów interfejsu i wizualizacji dostarczonych przez Google – podobnie jak w przypadku nawigacji w aplikacjach Mapy Google. Jeśli potrzebujesz większej elastyczności niż ta, którą oferuje nawigacja Google, możesz wdrożyć niestandardową nawigację. Niestandardowe wskazówki nawigacyjne mogą obejmować zarówno całkowite wyeliminowanie wskazówek dotyczących skrętu i uruchamianie nawigacji tylko jako procesu w tle, jak i wyświetlanie wysoce spersonalizowanych wskazówek na ekranie oddzielnym od urządzenia, na którym działa nawigacja. W przypadku niestandardowej nawigacji aplikacja wywołuje pakiet SDK nawigacji, aby poprosić o kanał nawigacji krok po kroku, a następnie udostępnia i zarządza elementami interfejsu i elementami wizualnymi, które użytkownik widzi podczas nawigacji. Korzystanie z nawigacji Google jest zwykle łatwiejsze do wdrożenia, ale tworzenie własnej nawigacji niestandardowej daje większe możliwości dostosowania.

Gdy tworzysz niestandardowe środowisko nawigacji, Twoja aplikacja wywołuje pakiet Navigation SDK, aby rozpocząć, uruchomić i zatrzymać nawigację, korzystając z tego procesu:

  1. Rozpocznij nawigację. Aby rozpocząć dostosowaną nawigację, utwórz instancję nawigacji i ustaw miejsce docelowe. Rozpocznij sesję nawigacji za pomocą GMSNavigationService.createNavigationSession. Ten obiekt bez interfejsu użytkownika, który zawiera stan, działa z kontrolerem widoku lub bez niego.

    Więcej informacji znajdziesz w artykule o szczegółach pliku danych o nawigacji krok po kroku.

    Zobacz wersję demonstracyjną: pakiet Navigation SDK zawiera wersję demonstracyjną, którą możesz uruchomić, aby zobaczyć przykład nawigacji, która przełącza się między szczegółowymi wskazówkami dojazdu w ramach standardowej nawigacji a nawigacją, która pokazuje tylko lokalizację urządzenia poruszającego się po linii łamanej drogi.

  2. Aktywna nawigacja. Oto kolejna kluczowa różnica między nawigacją dostarczaną przez Google a nawigacją niestandardową. Zamiast przekazywać wskazówki do wbudowanego menedżera zdarzeń pakietu SDK do nawigacji, skonfiguruj detektor szczegółowych wskazówek krok po kroku, implementując protokół GMSNavigatorListener, a następnie zaimplementuj obsługę zdarzeń. Dzięki temu Twoja aplikacja będzie reagować na zdarzenia opisane w sekcji Nasłuchiwanie zdarzeń nawigacji.

  3. Zakończ nawigację. Podobnie jak w przypadku nawigacji Google, nawigacja niestandardowa również wymaga zakończenia nawigacji w sposób najlepiej dopasowany do działania aplikacji.

Kiedy można użyć niestandardowego sposobu nawigacji?

W tabeli poniżej znajdziesz opis niektórych scenariuszy nawigacji niestandardowej.

Przykładowy scenariusz

Najważniejsze kroki

W przypadku małych pojazdów, takich jak jednoślady, musisz podawać wskazówki dla kierowcy tylko w formie tekstowej.

Utwórz nawigatora i skonfiguruj szczegółowe wskazówki nawigacyjne jako kanał danych na małym ekranie, podczas gdy nawigator będzie działać na telefonie komórkowym kierowcy poza jego bezpośrednim polem widzenia.

Chcesz udostępnić swoją 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. Ustal, kto będzie nawigatorem, jeśli jeszcze tego nie zrobiono.
  4. Skonfiguruj detektor szczegółowych wskazówek dojazdu.
  5. Narysuj mapę na powierzchni aplikacji samochodowej i wypeł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ą przez większość podróży, a tylko minimalne wskazówki dojazdu na ulicach miast.

Aplikacja powinna umożliwiać kierowcom włączanie i wyłączanie nawigacji Google w zależności od potrzeb bez zmiany ustawień nawigatora dotyczących miejsca docelowego i trybu podróży.