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 SDK nawigacji 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 – podobnej 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 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 krok po kroku. Następnie udostępniasz elementy interfejsu użytkownika i wizualizacje, które widzi użytkownik, 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 pakiet SDK nawigacji, 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 o szczegółach dotyczących 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 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ć swoją aplikację jako usługę transportową dla kierowców, którzy korzystają z Apple CarPlay.

  1. Skonfiguruj usługę samochodową.
  2. Skonfiguruj projekt Navigation SDK.
  3. Ustaw nawigatora, jeśli jeszcze tego nie zrobiono.
  4. Skonfiguruj odbiornik wskazówek dojazdu.
  5. Narysuj mapę na automatycznej karcie aplikacji 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ć na większości trasy mapę ogólną, a na ulicach w mieście tylko minimalne wskazówki 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.