Android Automotive OS 概览

Android Automotive OS 界面
图 1:Android Automotive OS

Android Automotive OS 是专为车载应用优化的 Android 版本,基于核心 Android 平台进行扩展。搭载 Google 产品的汽车搭载 Android Automotive OS,并附带 Google 应用和服务,包括 Google Play、Google 助理和 Google 地图。

了解 Android Automotive OS 硬件

如需详细了解 Android Automotive OS 设备的最低硬件规格,请参阅适用于您应用支持的 Android 版本的 Android 兼容性定义文档 (CDD)汽车行业要求部分。

刘海屏

与其他 Android 设备规格一样,采用非矩形显示屏的 Android Automotive OS 设备也支持显示屏刘海屏。不过,汽车中切口的尺寸和形状可能与其他外形规格中的切口截然不同。如需获取详细指南,请参阅使用窗口边衬区和显示屏刘海屏

音频

Android Automotive OS 设备通常是固定音量设备。如需详细了解这可能会对您的应用产生哪些影响,请参阅使用固定容量设备

了解 Android Automotive OS 软件

虽然 Android Automotive OS 基于与其他外形规格设备所用的核心操作系统相同的操作系统,但它还具有一些独特的附加功能,这些功能可能会影响应用的开发和使用方式。

系统界面

您应该注意,这些系统界面元素在汽车中的运作方式存在一些差异。

与其他设备规格不同,Android Automotive OS 设备无需具备硬件或软件返回功能。在非兼容模式下运行时,应用实现的 activity 应包含界面功能,以实现应用内导航,从而满足 AN-1 质量指南的要求。

系统栏布局

与其他设备规格一样,Android Automotive OS 包含状态栏和导航栏等系统栏。在汽车中,这些栏的尺寸和位置可能与其他设备规格不同。例如,导航栏可以位于屏幕的左侧、右侧或底部。即使顶部有状态栏,底部有导航栏(与大多数手机和平板电脑一样),这些元素在汽车中的尺寸也可能会大得多。

此外,虽然移动设备上的刘海屏通常包含在系统栏的边界内,但汽车上的刘海屏则不然。

如需获取详细指南,请参阅使用窗口边衬区和显示屏刘海屏

沉浸模式

Android Automotive OS 允许 OEM 控制应用能否显示或隐藏系统栏以进入和退出沉浸式模式。通过阻止应用隐藏系统栏,原始设备制造商 (OEM) 可以确保车辆控件(例如空调控件)在屏幕上始终可用。

用户体验限制

用户体验 (UX) 限制是 Android Automotive OS 中内置的一项功能,用于处理驾驶员分心注意事项。用户体验限制负责自动阻止使用未针对驾车时使用进行优化的应用。

在未标记为“经过防分心优化”的应用上显示的屏蔽 activity。
图 2:因用户体验限制而被屏蔽的应用

确定用户体验限制的启用方式和时间的一组确切规则由车辆制造商决定。这些规则可能会因地理位置而异,例如,在欧洲销售的同一车辆可能适用与在美国销售的同一车辆不同的规则。

用户体验限制规则还可能因车辆内的显示屏而异。例如,在车辆行驶时,驾驶员视线范围内的中控显示屏可能会受到限制,而乘客显示屏则不会受到限制。

如果您的应用需要适应用户体验限制,请直接引用这些限制,不要尝试逆向工程其实现。例如,如果您假定当档位不是“P”时,用户体验限制处于有效状态,则可能会不必要地限制乘客显示屏上运行的应用。

防分心优化

默认情况下,为了避免分散驾驶员注意力,在用户体验限制生效期间,系统不会运行 activity。如需向系统指明 activity 应在车辆行驶时继续运行,可以在相应的 <activity> 元素中添加以下 <meta-data> 元素。

<activity ...>
  <meta-data android:name="distractionOptimized" android:value="true">
</activity>

在为 Android Automotive OS 开发应用时,只有在为使用汽车应用库构建的应用的 CarAppActivity 声明 <activity> 清单元素时,清单中才应包含此元数据。请勿将任何其他 activity 标记为经过防分心优化,否则在提交到 Google Play 商店时,您的应用将被拒绝。

无障碍

与其他设备规格相比,Android Automotive OS 的无障碍功能支持范围较小。TalkBack开关控制Voice Access 不适用于 Android Automotive OS 设备。

Android Automotive OS 设备支持字幕偏好设置。如需详细了解集成信息,请参阅采用系统字幕设置

网络选择

Android Automotive OS 支持按应用选择网络 (PANS),让 OEM 可以按应用将移动网络流量路由到不同的网络。

大多数应用仅使用分配给它们的默认网络,并且只能从中受益。例如,即使用户没有自己的数据流量套餐,OEM 也可能会为应用支付网络流量费用。如果您的应用(或其某个依赖项)依赖于默认网络以外的网络,则可能无法受益于 OEM 设置的偏好设置。如需有关使用非默认网络的更多指导,请参阅读取网络状态

系统功能

您可以使用 PackageManager::hasSystemFeature 检测给定功能是否可用,并相应地调整应用的行为。

硬件功能

与其他非移动设备外形规格一样,汽车上提供的硬件功能可能与移动设备上的硬件功能不同。

屏幕方向

与电视一样,汽车也是固定屏幕方向的设备。与电视不同,它们既有纵向模式,也有横向模式。为了确保为 Android Automotive OS 构建的应用可以分发到所有车辆,应用必须确保它们对 android.hardware.screen.landscapeandroid.hardware.screen.portrait 功能没有任何显式或隐式功能要求。

网络位置

许多 Android Automotive OS 设备未实现用于提供网络位置信息的电话堆栈,因此不会报告 android.hardware.location.network 系统功能。虽然网络位置信息可能不可用,但系统仍支持访问粗略位置信息 - 请参阅 Android Automotive OS 上的粗略位置信息

软件功能

Android Automotive OS 设备可能不支持其他类型设备上常见的一些软件功能。例如,许多 Android Automotive OS 车辆不支持以下功能:

常见问题解答

哪些车辆搭载了 Google 产品?

如需查看有哪些原始设备制造商 (OEM) 推出了搭载 Google 产品的车型,请访问搭载 Google 产品的汽车网站。您可以使用 Play 管理中心的设备目录获取硬件规格和其他设备详细信息。