Google 助理可帮助驾驶员在驾驶时执行他们已经正在做的任务。它通过提供一目了然、语音优先的多模态体验来减少分心。驾驶模式有助于使每次驾驶更安全、信息更丰富、互联性更强、更愉快。
使用驾驶模式
当您在 Google 地图中开始导航时,设备会自动进入驾驶模式。
停用驾驶模式
- 导航至 Google 地图设置 > 导航设置 > Google 助理设置 > 管理驾驶模式。
- 关闭驾驶模式设置。

应用前提条件
为了使驾驶模式与您的媒体应用正常配合,应用必须满足以下要求:
- 遵循Google 助理和媒体应用中的所有说明
- 您的应用必须声明支持 Android Auto 的媒体功能。请遵循声明 Android Auto 的媒体支持中的说明。
- 处理音频焦点
- 使用
PlaybackState
报告错误 - 实现 MediaBrowserService 和 MediaSession
- 您的 MediaSession 必须实现以下回调:
onPlay()
onPlayFromSearch()
onPlayFromUri()
onSkipToNext()
onSkipToPrevious()
onPause()
onStop()
- 通过调用
setMetadata()
保持MediaSession
元数据最新。
驾驶模式和播放控件
每个应用都会确定屏幕上显示的传输控件。通过将其 MediaSession
连接到 TransportControls
来实现。例如,音乐播放器通常会显示以下控件:

任何其他支持的操作都通过语音命令调用。
驾驶模式下的媒体推荐
驾驶模式在两个位置显示推荐内容:“为您推荐”页面和应用的浏览页面。屏幕外观相似:


助理会调用带有提示 EXTRA_SUGGESTED
的 MediaBrowserService.onGetRoot()
来检索推荐。您应该返回可播放的 MediaItem
对象的扁平列表。应用的浏览屏幕会显示列表中的所有项目。“为您推荐”屏幕不保证在列表项少于 15 个时显示推荐内容。
每个 MediaItem
必须具有媒体艺术作品。您可以通过在每个 MediaItem
的 MediaDescription 中的 Bundle 中添加 CONTENT_TYPE
键值对来提供 MediaItem
的类型。这有助于提高项目在“为您推荐”页面中的排名。
CONTENT_TYPE
的可能值包括:
- ALBUM
- ARTIST
- PLAYLIST
- TV_SHOW_EPISODE
- PODCAST_EPISODE
- MUSIC
- AUDIO_BOOK
- RADIO_STATION
- VIDEO
- NEWS
测试
使用媒体控制测试应用来验证您的应用。
已知问题
在驾驶模式下,避免在前景打开媒体应用非常重要。例如,当助理调用 MediaBrowserService.onGetRoot()
来检索推荐时,您的应用应确保 PlaybackState
的状态为 STATE_NONE
。这可以防止您的应用被带到前景。目前,应用无法检测它是否处于驾驶模式。