使用 Jetpack XR SDK 进行开发

借助 Jetpack XR SDK,您可以使用 KotlinCompose 等现代工具以及 Java 和 Views 等上一代工具来构建沉浸式 XR 体验。您可以将界面空间化加载和渲染 3D 模型,并从语义上理解现实世界。

如果您已在 Android 上开发了移动应用或大屏应用,Jetpack XR SDK 可通过将现有布局空间化,并利用 3D 模型和沉浸式环境来增强您的体验,从而将您的应用扩展到新的维度。如需了解有关空间化现有 Android 应用的建议,请参阅我们的质量指南

Jetpack XR SDK 由以下库组成。它们共同构成了一个全面的工具包,可用于构建丰富多样的空间化体验,并且可以无缝协作。

  • Jetpack Compose for XR:以声明方式构建利用 Android XR 空间功能的空间界面布局。
  • 适用于 XR 的 Material Design:使用可适应 XR 的 Material 组件和布局进行构建。
  • Jetpack SceneCore:使用 3D 内容构建和操纵 Android XR 场景图。
  • ARCore for Jetpack XR:利用感知功能将数字内容带入现实世界。

Jetpack Compose for XR

借助 Jetpack Compose for XR,您可以运用熟悉的 Compose 概念(例如)在 XR 中创建空间界面布局,无论您是将现有 2D 应用移植到 XR 还是从头开始创建新的 XR 应用,都可以使用这些概念。

此库提供子空间可组合项,例如空间面板轨道飞行器,可让您将现有的基于 2D Compose 或视图的界面放置在空间布局中。

如需详细指导,请参阅使用 Jetpack Compose for XR 开发界面

开发界面 XR 组件轨道飞行器通用示例

Compose for XR 引入了 Volume 子空间可组合项,可让您相对于界面放置 SceneCore 实体(例如 3D 模型)。

了解如何使现有的 Android 应用实现空间化,或查看 API 参考文档以获取更详细的信息。

适用于 XR 的 Material Design

Material Design 提供可适应 XR 的组件和布局。例如,如果您使用自适应布局进行构建,并使用 EnableXrComponentOverrides 封装容器将依赖项更新为最新的 Alpha 版,则每个窗格都会放置在 SpatialPanel 中,而导航栏则会放置在 Orbiter 中。详细了解如何为 XR 实现 Material Design

Jetpack SceneCore

借助 Jetpack SceneCore 库,您可以放置和排列由实体定义的 3D 内容,使其相对于彼此和您的环境。借助 SceneCore,您可以:

Jetpack SceneCore 库还支持对使用视图构建的应用进行空间化处理。如需了解详情,请参阅我们的视图使用指南

如需了解更详细的信息,请参阅 API 参考文档

适用于 Jetpack XR 的 ARCore

ARCore for Jetpack XR 库的灵感源自现有的 ARCore 库,可提供将数字内容与现实世界融合的功能。该库包含运动跟踪、持久锚点、命中测试和平面识别功能,并提供语义标签(例如地面、墙壁和桌面)。此库利用由 OpenXR 提供支持的底层感知堆栈,可确保与各种设备兼容,并有助于保障应用在未来继续可用。

如需了解详情,请参阅使用 ARCore for Jetpack XR

关于开发者预览版的注意事项

请注意,此版本是开发者预览版的一部分,这些 API 仍在开发中。如需了解已知问题,请参阅版本说明:

如果您遇到该列表中未列出的问题,请报告 bug 或提交反馈


OpenXR™ 和 OpenXR 徽标是 The Khronos Group Inc. 拥有的商标,已在中国、欧盟、日本和英国注册为商标。