В Navigation SDK есть разные способы интегрировать навигацию в приложение. На этой странице рассказывается, что такое настраиваемая навигация и чем она отличается от других вариантов, доступных в Navigation SDK.
Что такое персонализированная навигация?
Основной способ реализации Navigation SDK – использование навигации Google. Это позволяет встроить в приложение пошаговую навигацию с элементами интерфейса и визуальными элементами, предоставляемыми Google, – аналогично навигации в приложениях Google Карт. Если вам нужно больше гибкости, чем предлагает навигация Google, вы можете реализовать собственную навигацию. Настраиваемая навигация может быть разной: от полного отключения голосовых подсказок и работы навигации в фоновом процессе до вывода подсказок на отдельный экран. При использовании пользовательского интерфейса навигации ваше приложение вызывает Navigation SDK, чтобы запросить фид пошаговой навигации, а затем вы предоставляете элементы интерфейса и визуальные элементы, которые пользователь видит в навигации, и управляете ими. Использовать навигацию Google обычно проще, но если вы создадите собственную навигацию, то сможете настроить ее более гибко.
При создании пользовательской навигации ваше приложение вызывает Navigation SDK для запуска, выполнения и остановки навигации, используя следующий процесс:
Запустите навигацию. Чтобы начать навигацию, создайте экземпляр навигации и задайте пункт назначения. Начните сеанс навигации с помощью
GMSNavigationService.createNavigationSession. Этот объект, хранящий состояние, не связан с интерфейсом и может работать с контроллером представления или без него.Подробнее о фиде данных пошаговой навигации…
Посмотрите демоверсию. В скачанном Navigation SDK есть демоверсия, в которой показано, как переключаться между пошаговой навигацией и навигацией, в которой отображается только местоположение устройства, движущегося по полилинии дороги.
Активная навигация. Вот ещё одно важное отличие между навигацией от Google и навигацией, созданной вами. Вместо того чтобы передавать инструкции встроенному менеджеру событий Navigation SDK, вы настраиваете прослушиватель подробных пошаговых инструкций, реализуя протокол
GMSNavigatorListener, а затем реализуете обработчики событий. Это позволяет вашему приложению реагировать на события, описанные в разделе Прослушивание событий навигации.Завершите навигацию. Как и в случае с навигацией Google, при использовании собственной навигации вы должны завершать ее наиболее подходящим для приложения способом.
В каких случаях можно использовать собственную навигацию?
В таблице ниже описаны некоторые сценарии пользовательской навигации.
Пример |
Общие сведения |
|---|---|
Для небольших устройств, например двухколесных транспортных средств, необходимо предоставить текстовые инструкции для водителей. |
Создайте навигатор и настройте пошаговые инструкции в виде фида данных для небольшого экрана, пока навигатор работает на мобильном телефоне водителя вне его поля зрения. |
Вы хотите сделать свое приложение доступным в качестве сервиса для водителей, которые используют Apple CarPlay. |
Подробнее о том, как включить навигацию для CarPlay… |
Водителям, использующим ваше приложение, нужна обзорная карта для большей части поездки и минимальные пошаговые инструкции для городских улиц. |
Приложение должно позволять водителям входить в навигатор Google и выходить из него по мере необходимости, не меняя при этом настройки навигатора для пункта назначения и режима поездки. |