今天,Android Auto 和内置 Google 的 Android Automotive OS 汽车的游戏类别正式从 Beta 版升级为正式版。我们的抢先体验合作伙伴已开始为汽车的停车时体验提供游戏,您可以在我们最新的适用于 Android Auto 的游戏和适用于 Android Automotive OS 的游戏合集中浏览这些游戏。
将游戏引入汽车,让您可以在用户自然空闲时间(例如在充电站等待或等待路边取货时)触达他们。今天的里程碑意味着,我们正在开放访问权限,以便开发者现在可以将游戏发布到 Google Play 上的开放式测试轨道和正式版轨道。在本文中,我们将重点介绍关键技术要求和发布条件,说明如何调整现有 Android 游戏以适应车载屏幕。
为游戏实现车载支持
如果您已遵循构建自适应应用的最佳实践,那么将现有 Android 游戏移植到汽车上主要涉及配置应用清单,并确保游戏尊重车辆停放状态。
将应用标记为游戏
如需在游戏类别中分发应用,您需要明确声明其类别。将 android:appCategory="game" 属性添加到清单文件的 <application> 元素中:
<application ...
android:appCategory="game">
...
</application>声明对 Android Auto 的支持
搭载 Android 15 及更高版本的设备上的 Android Auto 支持游戏。如需声明您的游戏支持 Android Auto,请在清单文件中某个 activity 的 intent 过滤器中添加以下 <category> 元素:
<activity ...
<intent-filter>
<action android:name="android.intent.action.MAIN" />
...
<category android:name="android.intent.category.CAR_LAUNCHER" />
</intent-filter>
</activity>通常,android.intent.category.CAR_LAUNCHER 类别元素与 android.intent.category.LAUNCHER 元素位于同一 intent 过滤器中,但如果您希望启动其他 activity,也可以将其放在其他 activity 的 intent 过滤器中。
声明对 Android Automotive OS 的支持
如需声明您的游戏支持 Android Automotive OS,请在清单文件中添加 android.hardware.type.automotive <uses-feature> 元素。
<manifest ...
...
<uses-feature android:name="android.hardware.type.automotive"
android:required="false" />
...
</manifest>android:required 值有不同的限制,具体取决于您选择哪个轨道来分发 Android Automotive OS 应用。如果您在移动轨道上分发 Android Automotive OS 应用,则 android:required 必须设置为 "false"。不过,如果您在 Android Automotive OS 专用轨道上分发应用,则可以将 android:required 设置为 "true" 或 "false",也可以不设置。如果不设置该值,效果与将 android:required 设置为 "true" 相同,这意味着您的应用仅可在 Android Automotive OS 设备上分发。
处理停车状态
汽车引入了独特的物理环境,包括驾驶状态和停车状态。某些类型的应用(例如游戏)被视为停车应用,不允许在车辆行驶时运行,以免分散驾驶员的注意力。默认情况下,当车辆行驶时或当用户体验 (UX) 限制处于有效状态时,Android Auto 和 Android Automotive OS 会阻止使用或启动 activity。为确保游戏符合驾驶员分心准则,请勿在清单中的任何 activity 中添加 distractionOptimized 元数据元素。您还必须确保游戏音频在用户开始驾驶时停止,并且在车辆行驶过程中无法取消暂停。
此外,当用户从主屏幕重新启动应用时,游戏必须尽可能恢复为与之前的状态最接近的状态。测试游戏的响应能力,确保游戏在运行期间不会卡顿或出现延迟。
声明游戏控制器支持
汽车屏幕支持触控输入,但许多用户更喜欢使用连接的游戏手柄来玩游戏。如果您的游戏支持控制器输入,请在清单中声明 android.hardware.gamepad 功能,以帮助提高您的应用在 Google Play 商店中的曝光度,让专门寻找兼容控制器的体验的用户能够找到您的应用。
<uses-feature android:name="android.hardware.gamepad" android:required="false"/>
将 android:required 属性设置为 false,以表明您的应用支持控制器,但使用控制器是可选的。除非游戏必须使用控制器,否则请勿将 android:required 属性设置为 true。
支持常见的屏幕尺寸和宽高比
汽车显示屏有各种形状和宽高比,包括纵向和宽横向屏幕。为了提供出色的用户体验,请让游戏完全适应不同的屏幕尺寸,以便在全屏模式下运行,而不会出现信箱模式或立柱模式。对于 Android Auto,请参阅针对标准屏幕尺寸进行测试的相关指南;对于 Android Automotive OS,请在通过模拟器进行测试时使用捆绑的硬件配置文件。
将游戏发布到汽车
完成必要的更改后,您可以在 Google Play 管理中心内选择加入 Android Auto 和 Android Automotive OS 设备规格分发计划。在提交以供正式发布之前,请根据汽车应用质量指南(针对游戏)测试您的游戏。
使用桌面车机测试应用的 Android Auto 兼容性,并使用 Android Automotive OS 模拟器测试 Android Automotive OS 上的体验。在游戏获得批准进行公开测试或发布为正式版之前,我们会根据汽车应用质量指南(游戏类别)审核游戏。
随时随地畅玩游戏
随着游戏类别正式版现已发布,现在正是针对汽车优化游戏的好时机。如需详细了解实现细节,请参阅为汽车构建游戏中的文档。
-
产品资讯我们很高兴看到开发者不断将自己的应用和体验引入 Android for Cars!在过去一年中,我们看到 Android Auto 和内置 Google 的汽车上的应用生态系统持续保持强劲的增长势头。
Jan Kleinert, Noam Gefen, Thomas Weathers • 阅读用时:3 分钟 -
产品资讯Google 认为,产品应从设计上就具备安全性。因此,我们基于现有的、经过市场验证的平台构建了 Android Automotive 操作系统(软件定义型车辆专用版,简称 AAOS SDV),并利用了 Cuttlefish 等虚拟化技术。
Markus Vill, Sean Keys, István Nádor • 阅读用时:5 分钟 -
产品资讯自 Jetpack Compose 发布以来,我们已投入近 5 年的时间,为您提供所需的所有功能、性能和工具,以便您在各种 Android 设备上构建出色的界面。
Nick Butcher • 阅读用时:2 分钟
每周通过电子邮件接收最新的 Android 开发洞见。