Google 助理驾驶模式下的媒体应用

Google 助理可帮助驾驶员在驾驶时执行他们已经正在做的任务。它通过提供一目了然、语音优先的多模态体验来减少分心。驾驶模式有助于使每次驾驶更安全、信息更丰富、互联性更强、更愉快。

使用驾驶模式

当您在 Google 地图中开始导航时,设备会自动进入驾驶模式。

停用驾驶模式

  1. 导航至 Google 地图设置 > 导航设置 > Google 助理设置 > 管理驾驶模式
  2. 关闭驾驶模式设置。

应用前提条件

为了使驾驶模式与您的媒体应用正常配合,应用必须满足以下要求:

驾驶模式和播放控件

每个应用都会确定屏幕上显示的传输控件。通过将其 MediaSession 连接到 TransportControls 来实现。例如,音乐播放器通常会显示以下控件:

任何其他支持的操作都通过语音命令调用。

驾驶模式下的媒体推荐

驾驶模式在两个位置显示推荐内容:“为您推荐”页面和应用的浏览页面。屏幕外观相似:

controls
为您推荐
controls
应用浏览

助理会调用带有提示 EXTRA_SUGGESTEDMediaBrowserService.onGetRoot() 来检索推荐。您应该返回可播放的 MediaItem 对象的扁平列表。应用的浏览屏幕会显示列表中的所有项目。“为您推荐”屏幕不保证在列表项少于 15 个时显示推荐内容。

每个 MediaItem 必须具有媒体艺术作品。您可以通过在每个 MediaItemMediaDescription 中的 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。这可以防止您的应用被带到前景。目前,应用无法检测它是否处于驾驶模式。