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 nawigacji dostępnych w pakiecie Navigation SDK.
Czym jest niestandardowa nawigacja?
Głównym sposobem implementacji pakietu Navigation SDK jest korzystanie z nawigacji Google, która umożliwia osadzanie nawigacji krok po kroku z elementami interfejsu i grafikami dostarczonymi 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 zaimplementować niestandardową nawigację. Niestandardowa nawigacja może obejmować wszystko – od całkowitego wyeliminowania wskazówek dotyczących skręcania i uruchamiania nawigacji tylko jako procesu w tle, po 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 Navigation SDK, aby poprosić o kanał nawigacji krok po kroku, a następnie udostępnia i zarządza elementami interfejsu i grafikami, które użytkownik widzi w nawigacji. Korzystanie z nawigacji Google jest na ogół łatwiejsze do wdrożenia, ale tworzenie własnej niestandardowej nawigacji pozwala na większą personalizację.
Gdy tworzysz niestandardową nawigację, aplikacja wywołuje pakiet Navigation SDK, aby rozpocząć, uruchomić i zatrzymać nawigację, korzystając z tego procesu:
Rozpocznij nawigację. Aby rozpocząć spersonalizowaną nawigację, utwórz instancję nawigacji i ustaw cel. Ustanów sesję nawigacji za pomocą
GMSNavigationService.createNavigationSession. Ten obiekt bez interfejsu użytkownika, który przechowuje stan, działa z kontrolerem widoku lub bez niego.Więcej informacji znajdziesz w artykule Szczegóły dotyczące kanału danych nawigacji krok po kroku.
Zobacz wersję demonstracyjną: pobrany pakiet Navigation SDK zawiera wersję demonstracyjną, którą możesz uruchomić, aby zobaczyć przykład nawigacji, która przełącza się między nawigacją krok po kroku za pomocą standardowej nawigacji a nawigacją, która pokazuje tylko lokalizację urządzenia poruszającego się po polilinii drogi.
Aktywna nawigacja. Oto kolejna kluczowa różnica między nawigacją dostarczoną przez Google a nawigacją niestandardową. Zamiast przekazywać wskazówki do wbudowanego menedżera zdarzeń pakietu Navigation SDK, skonfiguruj odbiornik szczegółowych wskazówek krok po kroku, implementując protokół
GMSNavigatorListener, a następnie zaimplementuj obsługę zdarzeń. Dzięki temu Twoja nawigacja może reagować na zdarzenia opisane w artykule Nasłuchiwanie zdarzeń nawigacji .Zakończ nawigację. Podobnie jak w przypadku nawigacji Google, nawigacja niestandardowa wymaga również zakończenia nawigacji w sposób najlepiej dopasowany do aplikacji.
Kiedy warto używać niestandardowej nawigacji?
W tabeli poniżej opisujemy kilka scenariuszy niestandardowej nawigacji.
Przykład |
Najważniejsze kroki |
|---|---|
Musisz udostępnić kierowcy wskazówki tekstowe na małych urządzeniach, takich jak pojazdy dwukołowe. |
Utwórz nawigatora i skonfiguruj nawigację krok po kroku jako kanał danych na małym ekranie, podczas gdy nawigator 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. |
Więcej informacji znajdziesz w artykule Włączanie nawigacji w CarPlay. |
Kierowcy korzystający z Twojej aplikacji chcą mieć mapę przeglądową przez większość swojej podróży, a tylko minimalne wskazówki krok po kroku na ulicach miasta. |
Twoja aplikacja powinna umożliwiać kierowcom wchodzenie i wychodzenie z nawigacji Google w razie potrzeby bez zmiany ustawień nawigatora dotyczących celu i trybu podróży. |