自定义 Media

“Media”提供了一个平台,让开发者可在其上构建媒体应用,以便在每辆支持 Android 的汽车中提供安全、无缝的互联信息娱乐体验。作为一款 Android 系统应用,Media 旨在为媒体应用提供经过防分心优化 (DO) 的播放和浏览体验。Android 开源项目 (AOSP) 中包含功能齐全的 Media 实现。

Media 屏幕

图 1. Media 屏幕

如需了解 Media,请参阅以下文章:

  • 系统组件和用户流:这篇文章详细介绍了与 Media 互动的组件以及最常见的用户流。
  • 用 Media 实现电台功能:介绍了如何将电台界面与 Media 集成,以便让用户能够与多个媒体来源和电台互动,就像它们都是同一个应用一样。
  • 自定义 Media:了解如何使用 AOSP 结构中不同级别所定义的样式和资源。

术语

使用的术语如下:

术语 说明
媒体来源 实现 Android MediaBrowserService API 以公开其媒体内容目录的播放控制和浏览功能的 Android 应用。
媒体内容

媒体来源目录中的一个元素。媒体内容可为以下任一项:

  • 可播放媒体内容:可由系统播放的音频片段,例如歌曲、书籍章节和各集播客
  • 可浏览媒体内容:一种组织性元素,用于整理可播放媒体内容或其他可浏览媒体内容,包括歌曲类别、近期播放歌曲文件夹,以及按音乐人、作者或受众群体排序的播客和其他可播放媒体内容。

Media 功能

Media 提供以下功能。

驾车时 停车时

播放控制

  • 呈现当前播放的歌曲等媒体内容,包括其标题、专辑封面、时长、说明和当前播放位置。

  • 执行标准媒体操作(例如播放、停止、暂停和快进)。

  • 执行自定义媒体操作(各媒体来源提供的自定义操作)。

  • 呈现播放队列(如果媒体应用提供了播放队列)。

目录浏览

  • 显示顶级类别。

  • 展开文件夹等可浏览媒体内容的细目。

  • 选择歌曲等可播放媒体内容,并呈现其标题、专辑封面和指示图标等信息。例如,露骨内容和已下载内容对应的指示图标。

“驾车时”下列出的所有功能,以及:

  • 登录:对于那些需要登录的媒体来源,应该可以直接从 Media 启动登录流程。

  • 设置:媒体来源可以显示设置界面。

  • 使用键盘执行搜索:用户可以在 Media 中执行文本搜索。

任务

下表说明了各方的任务。

汽车制造商 (OEM) Google 应用开发者
  • 使用 Android Automotive 构建完全符合要求的 Android CDD 信息娱乐系统。
  • 在 MediaSession 和 Browser API 以及与 Media 的互操作性方面,达到应该满足的所有要求:
    • 遵守浏览结构。
    • 遵守自定义操作的要求。
    • 将登录、设置等操作委派给应用。
    • 遵循 API 明确支持的应用品牌宣传元素。例如,应用名称。
  • 定义并改进 Media API。
  • 在 AOSP 中提供 Media 实现。
  • 定义在 Play 商店中发布媒体应用的应用审核流程。
  • 提供有关 API、自定义、审核和认证流程等元素的文档。
  • 实现 Media API:
    • 为整体媒体浏览结构提供适当的内容。
    • 酌情提供自定义操作。
    • 向系统提供播放状态信息。
    • 提供品牌宣传元素,例如应用名称。
  • 根据需要实现登录、注册、设置和错误解决流程。
  • 构建车用 APK 并将其发布到 Play 商店。

自定义准则

AOSP 中包含的 Media 实现使用车载设备界面库进行自定义并提供基本主题和结构,可以按原样采用,也可以按照以下限制条件对其进行修改。下表介绍了 OEM 在 Media 自定义方面的责任。

Media 自定义 说明

应当

调整整体主题和样式,包括调色板和大小调整。

可以

修改 Media 的大体结构(例如,标签页放置位置)。

不得

修改 Media API 协定(包括应用品牌宣传方面):

  • MediaSession 和 MediaBrowser 互操作性
  • 媒体来源名称、图标

修改以下方面的信息架构:

  • 播放
  • 浏览
  • 搜索