ARCore for Jetpack XR 提供强大的感知功能,让您的应用可以通过各种 API 了解现实世界。其中一些 API 可帮助您增强 XR 头戴设备和有线 XR 眼镜等设备的沉浸式体验,一些 API 可帮助您增强 AI 眼镜等设备的增强体验,还有一些 API 可帮助您增强所有类型的 Android XR 设备的应用体验。
例如,您可以使用 ARCore for Jetpack XR 检索平面数据,将内容锚定到空间中的固定位置,或使用地理空间姿态将内容锚定到现实世界中的位置。
添加库依赖项
在开始在 XR 应用中使用感知功能之前,添加必要的 依赖项,具体取决于您要使用 AR 增强的应用体验类型 。
访问会话
ARCore for Jetpack XR 中的感知功能依赖于 Session,后者
使用 Jetpack XR 运行时。
您的应用应如何访问会话取决于您要使用感知功能增强的应用体验类型:
- 如果您的应用使用 空间界面 通过 Jetpack Compose for XR 增强沉浸式体验,请从 Jetpack Compose for XR 访问会话。
- 对于所有其他情况,您可以从 Jetpack XR运行时 访问会话,本页的下一部分对此进行了介绍。
从 Jetpack XR 运行时访问会话
如需从 Jetpack XR 运行时访问会话,您需要创建会话:
如需创建会话,请将 [Context] 传递给 create()
方法。此 Context 可以是沉浸式 XR 设备或
移动设备上的 Activity,也可以是 投影上下文。
创建 ARCore 会话可能是一项开销较大的任务,应在 后台处理,如 以下示例所示:
when (val result = Session.create(context)) { is SessionCreateSuccess -> { val xrSession = result.session // ... } else -> TODO(/* A different unhandled exception was thrown. */) }
当会话的 activity 被销毁时,与该会话关联的所有 AR 内容都会被销毁,并且该会话不再有效。
配置会话
某些功能可能默认处于停用状态,必须进行配置才能正常运行。如需配置会话,请使用 configure() 并指定 the
configuration options 需要的配置选项。Session如需详细了解不同 AR 功能所需的配置,请参阅每个 AR 功能的相应页面。
后续步骤
应用获得会话后,您可以探索如何使用该会话来增强不同 XR 设备的应用体验:
- 使用 ARCore for Jetpack XR 检测平面
- 使用 ARCore for Jetpack XR 创建锚点
- 使用 ARCore for Jetpack XR 处理手部
- 使用 ARCore for Jetpack XR 在应用中加入面部追踪功能
- 使用 ARCore for Jetpack XR 在应用中检索深度信息
- 使用 ARCore for Jetpack XR 跟踪设备的姿态