使用 Jetpack XR SDK 进行开发

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

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

Jetpack XR SDK 由以下库组成。它们共同提供了一套全面的工具包,可用于构建丰富多样的空间化体验,并且设计为能够彼此无缝协作。

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

Jetpack Compose for XR

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

此库提供了一种可组合项:子空间可组合项(例如 spatial panelsorbiters),可让您将现有的 2D Compose 或基于 View 的界面放置在空间布局中。

如需获取详细指导,请参阅使用适用于 XR 的 Jetpack Compose 开发界面

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

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

了解如何将现有 Android 应用空间化,或查看 API 参考文档以了解更多详情。

适用于 XR 的 Material Design

Material Design 提供了可适应 XR 的组件和布局。例如,如果您使用自适应布局进行构建,并且使用简单的 EnableXrComponentOverrides 封装容器更新到依赖项的最新 Alpha 版,则窗格将放置在 Spatial PanelsOrbiter 中的侧边导航栏中。详细了解如何实现适用于 XR 的 Material Design

Jetpack SceneCore

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

Jetpack SceneCore 库还支持将使用 View 构建的应用空间化。如需了解详情,请参阅我们的有关使用视图的指南

如需了解更多详情,请参阅 API 参考文档

适用于 Jetpack XR 的 ARCore

受现有 ARCore 库的启发,适用于 Jetpack XR 的 ARCore 库提供了将数字内容与现实世界融合的功能。此库包含动作跟踪、永久性锚点、命中测试以及带有语义标签(例如地板、墙壁和桌面)的平面识别。此库利用由 OpenXR 提供支持的基础感知堆栈,确保与各种设备兼容,并有助于确保应用在未来可用。

如需了解详情,请参阅使用适用于 Jetpack XR 的 ARCore

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

请注意,此版本属于开发者预览版,这些 API 仍处于开发阶段。如需了解已知问题,请参阅版本说明:

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