Samsung Galaxy XR 隆重登场,由 Android XR 提供支持!这篇博文是我们 Android XR Spotlight Week 的一部分,在此期间,我们将提供各种资源(博文、视频、示例代码等),帮助您学习、构建和准备适用于 Android XR 的应用。
今天,我们将重点介绍开发过程中的最后一步,确保这些体验成功触达用户。正确发布应用可确保应用得到高效打包、被合适的设备发现,并以尽可能好的方式呈现。
以下是您需要在 Google Play 上发布和分发 Android XR 应用时了解的 5 个事项。
1. 遵循 Android XR 应用质量指南,确保应用质量
发布之前最重要的步骤之一是确保应用提供安全、舒适且高效的用户体验。
遵循 Android XR 应用质量准则有助于确保您的应用在 Galaxy XR 等设备上为用户提供出色的体验。
质量为何重要
这些指南以大屏设备应用质量指南为基础,重点介绍关键的 XR 专用标准,包括:
- 安全性和舒适度:这一点至关重要。这些准则通过为镜头移动和帧速率设定标准,并限制频闪等视觉元素,有助于您避免引起晕动症。
- 性能:您的应用必须达到性能指标(例如目标帧速率),以防止出现延迟并确保流畅舒适的体验。
- 互动:该指南规定了互动目标的建议最小尺寸(例如,最小尺寸为 48dp,建议尺寸为 56dp),以便与眼球追踪和手部追踪输入顺畅配合。
2. 正确配置应用清单
AndroidManifest.xml 文件描述了有关应用的重要信息。Android 构建工具、Android 系统和 Google Play 会使用这些信息来了解您构建的体验类型以及所需的硬件功能。正确的配置对于正确的设备定位和应用启动至关重要。
指定应用使用的 Android XR SDK
在应用清单中,添加 android.software.xr.api.spatial 或 android.software.xr.api.openxr 以指明您是使用 Jetpack XR SDK 进行构建,还是使用 OpenXR 或 Unity 进行构建。
| 所用 SDK | 清单声明 |
| Jetpack XR SDK | android.software.xr.api.spatial |
| OpenXR 或 Unity | android.software.xr.api.openxr |
如果您的应用是使用 OpenXR 或 Unity 构建的,您必须将 android:required 属性设置为 true。对于使用 Jetpack XR SDK 构建的应用,如果应用发布到 Android XR 专用发布轨道,请将 android:required 属性设置为 true;如果应用发布到移动发布轨道,请将 android:required 属性设置为 false 。
设置 activity 启动模式
使用主 activity 中的 android.window.PROPERTY_XR_ACTIVITY_START_MODE 属性定义默认用户环境:
| 开始模式 | 用途 | SDK |
XR_ACTIVITY_START_MODE_HOME_SPACE | 在主共享空间(共享的多任务处理环境)中启动应用。 | Jetpack XR SDK |
XR_ACTIVITY_START_MODE_FULL_SPACE_MANAGED | 在全沉浸空间(一种完全沉浸式的单应用环境)中启动。 | Jetpack XR SDK |
XR_ACTIVITY_START_MODE_FULL_SPACE_UNMANAGED | 在全沉浸空间(一种完全沉浸式的单应用环境)中启动。请注意,使用 OpenXR 或 Unity 构建的应用始终在全沉浸空间中运行。 | OpenXR 或 Unity |
在运行时检查可选硬件功能
避免将可选的 XR 功能(例如手部跟踪或控制器)设置为 android:required="true",除非这些功能确实是您的应用所必需的。如果设备不支持必需的功能,Google Play 会在该设备上隐藏您的应用。如果您将某些功能设置为必需,但您的应用在没有这些功能的情况下也能运行,那么您可能会不必要地限制受众群体。
不过,您可以使用 PackageManager 类和 hasSystemFeature() 在运行时动态检查高级功能:
Kotlin val hasHandTracking = packageManager.hasSystemFeature("android.hardware.xr.input.hand_tracking") if (hasHandTracking) { // Enable high-fidelity hand tracking features } else { // Provide a fallback experience }
这可确保您的应用具有广泛的兼容性,并在高级功能可用时加以利用。
3. 使用 Play Asset Delivery (PAD) 分发大型资源
沉浸式应用和游戏通常包含可能超出标准大小限制的大型资源。使用 Play Asset Delivery (PAD) 管理大型高保真资源。PAD 提供灵活的分发模式:安装时分发、快速跟进式分发和按需分发,以便逐步下载内容。为 Android XR 构建的应用可以分发额外的资源包:按需分发或快速跟进式分发的资源包的累计总大小为 30 GB,而不是 4 GB。
对于使用 Unity 进行构建的开发者,请将 Unity Addressables 与 Play Asset Delivery 搭配使用,以管理资源包。
4. 利用空间视频预览展示您的应用
为了吸引在 XR 头戴设备上浏览 Play 商店的用户的注意力,您可以使用空间视频素材资源提供沉浸式应用预览。必须是 180°、360° 或立体视频。在 Android XR 设备上,Play 商店会自动将此内容显示为沉浸式 3D 预览,让用户在安装应用之前体验内容的深度和规模。
5. 选择 Google Play 发布轨道
Google Play 提供了两种发布 Android XR 应用的途径,这两种途径都使用相同的 Play 管理中心账号:
选项 A:继续使用移动设备发布轨道(适用于空间化移动应用)
如果您要向现有移动应用添加空间 XR 功能,通常可以将 XR 功能或内容捆绑到现有的 Android App Bundle (AAB) 中。
如果您的应用在移动设备和 XR 设备上都保留了大部分核心功能,并且您可以继续将同一 AAB 发布到移动轨道,那么此方法非常适合您。请查看此指南,确保您已正确配置应用的清单文件以支持此使用情形。
方法 B:发布到专用 Android XR 发布轨道
如果您要为 XR 构建全新应用,或者 XR 版本的应用在功能上与移动版应用过于不同,则应发布到 Android XR 专用发布轨道。
发布到 Android XR 专用发布轨道的应用只会向支持 android.software.xr.api.spatial 功能或 android.software.xr.api.openxr 功能的 Android XR 设备显示,让您可以控制分发。
遵循本指南,有助于确保您的创新型 Android XR 应用提供优质的用户体验、高效打包、使用 PAD 顺利交付,并面向能够运行这些应用的设备。祝您发布顺利!
继续阅读
-
操作方法
考虑到 Android 用户非常关注电池电量消耗过快的问题,Google 一直在采取重大措施来帮助开发者构建更省电的应用。
Alice Yuan • 阅读用时:8 分钟
-
操作方法
我们希望通过提供使用设备端模型和云端模型的 AI 赋能功能示例,激发您为用户打造出色体验的灵感。
Thomas Ezan, Ivy Knight • 阅读用时:2 分钟
-
操作方法
性能分级指南包含 5 个级别。我们将从第 1 级开始,该级别引入了最低限度的采用工作量性能分析工具,然后一直到第 5 级,该级别非常适合有资源来维护定制性能框架的应用。
Alice Yuan • 阅读用时:9 分钟
随时了解最新动态
每周通过电子邮件接收最新的 Android 开发洞见。