Navigation SDK 提供了多种将导航体验集成到应用中的不同方法。本页介绍了自定义导航体验的含义,以及它与 Navigation SDK 中提供的其他导航体验的区别。
什么是自定义导航体验?
实现 Navigation SDK 的主要方法是使用 Google 导航 体验, 让您可以嵌入精细导航体验, Google 提供的界面元素和视觉元素 - 与导航体验类似 。如果您需要比 Google Cloud 您可以实现自定义导航体验。 自定义导航体验是指不再提供精细导航 完全包含并仅作为后台进程运行导航, 在与设备分开的屏幕上提供高度个性化的指导体验 运行导航。借助自定义导航体验,您的应用会调用 Navigation SDK 来请求精细导航 Feed,然后您提供并管理用户在导航体验中看到的界面元素和视觉效果。虽然使用 Google 导航体验通常是 构建您自己的自定义导航体验 更多的自定义功能
创建自定义导航体验时,您的应用会调用 Navigation SDK 以使用以下流程启动、运行和停止导航:
开始导航。与 Google 导航体验一样,自定义导航体验仍涉及创建导航实例和设置目的地。不过,如果您要实现自定义导航体验,则需要先使用
GMSNavigationService.createNavigationSession
建立导航会话,GMSNavigationService.createNavigationSession
是一个具有状态的非界面对象,既可以与视图控制器一起操作,也可以单独操作。如需了解详情,请参阅启用精细导航数据 Feed。
查看演示:下载的 Navigation SDK 包含演示 您可以运行命令来查看 标准导航提供精细导航 仅显示设备沿道路移动位置的体验 多段线
正在导航。这里展示的另一个主要区别是 Google 提供的导航体验和自定义导航体验。 您可以启用精细导航信息并实现事件处理脚本,而不是将导航信息交给 Navigation SDK 的内置事件管理器。这样,您的体验便可响应监听导航事件中所述的事件。
结束导航。与 Google 导航体验一样,自定义 导航时,您还需要以 与应用体验相称
您何时可以使用自定义导航体验?
下表介绍了一些自定义导航场景。
示例场景 |
概要步骤 |
---|---|
您需要为小型设备(例如两轮车辆)提供纯文本驾驶指南。 |
创建导航器,并将精细导航设置为数据 小屏幕设备在导航时, 离开驾驶员手机的屏幕。 |
您希望将您的应用作为汽车服务提供给 使用 Android Auto |
如需了解详情,请参阅为 Android Auto 启用导航 |
使用您应用的司机希望在行程的大部分时间内查看概览地图,仅在城市街道上显示少量精细导航信息。 |
您的应用应允许司机根据需要进入和退出 Google 导航体验,而无需切换导航器的目的地和行程模式设置。 |