XR Runtime

使用我们的原生运行时开始您的自定义 AR 或 3D 会话。
最新更新 稳定版 发布候选版 Beta 版 Alpha 版
2025 年 5 月 7 日 - - - 1.0.0-alpha04

声明依赖项

要添加对 XR 运行时的依赖项,您必须将 Google Maven 代码库添加到您的项目中。请阅读Google 的 Maven 代码库以了解更多信息。

将您所需的工件的依赖项添加到应用或模块的 build.gradle 文件中

Groovy

dependencies {
    implementation "androidx.xr.runtime:runtime:1.0.0-alpha04"

    // Use in environments that do not support OpenXR
    testImplementation "androidx.xr.runtime:runtime-testing:1.0.0-alpha04"
}

Kotlin

dependencies {
    implementation("androidx.xr.runtime:runtime:1.0.0-alpha04")

    // Use in environments that do not support OpenXR
    testImplementation("androidx.xr.runtime:runtime-testing:1.0.0-alpha04")
}

有关依赖项的更多信息,请参阅添加构建依赖项

反馈

您的反馈有助于改进 Jetpack。如果您发现新问题或有改进此库的建议,请告诉我们。在创建新问题之前,请查看此库中的现有问题。您可以通过点击星形按钮为您关注的现有问题投票。

创建新问题

有关更多信息,请参阅问题跟踪器文档

版本 1.0

版本 1.0.0-alpha04

2025 年 5 月 7 日

androidx.xr.runtime:runtime:1.0.0-alpha04androidx.xr.runtime:runtime-openxr:1.0.0-alpha04androidx.xr.runtime:runtime-testing:1.0.0-alpha04 已发布。版本 1.0.0-alpha04 包含这些提交

新功能

  • Session 现在实现了 androidx.lifecycle.LifecycleOwner,以更好地与现有 Android 生命周期范式进行互操作。
  • Android XR 的清单字符串在此处指定并记录。
  • 添加了空间可见性回调扩展方法,用于监控场景内容何时移入或移出用户的视野。
  • 添加了 JxrPlatformAdapter(及其所有相关类)的存根版本。
  • Session 将在 SceneCore 和 Runtime 中使用,而不是 SceneCore 中的 Session。
  • 添加了 ActivityPose.hitTest,从而可以对虚拟内容进行 hitTest
  • 现在支持在编译时指定多个 Runtime 实现。在执行时,只会根据当前设备的特性集加载其中一个。
  • 添加了新的组件类型 SpatialPointerComponent,允许客户端指定为指针渲染的图标,或禁用该图标。此组件目前只能附加到 PanelEntity 实例。

API 更改

  • 使 Config 实现公开。(I95860
  • 添加 HandJointTypeTrackingState。(I55880
  • 使用 Kotlin 2.0 发布的项目需要 KGP 2.0.0 或更高版本才能使用。(Idb6b5
  • Hand.isActive (boolean) 已更改为 Hand.trackingStateOpenXR 实现已相应修改。
  • Session.configure 中的 android.permission.SCENE_UNDERSTANDING 权限要求已更改为 android.permission.SCENE_UNDERSTANDING_COARSE
  • LifecycleManager.configure 已实现,现在传入一个 Config 对象,该对象包含每个可配置运行时功能的属性。
  • 现在可以使用 Config 调用 Session.configure,以配置可用的运行时功能。
  • Session.create 现在支持传递 CoroutineContext 而不是 CoroutineDispatcher
  • Session.create 支持为 Jetpack XR 和/或 SceneCore 加载 ARCore。必须至少提供其中一个(有测试版本可用)。
  • 当将无效 UUID 传递给 Anchor.loadAnchor.unpersist 时,FakePerceptionManager 会抛出 AnchorInvalidUuidException
  • CoreState 不再是一个数据类。

错误修复

  • 修复了 Runtime proguard 配置。

版本 1.0.0-alpha03

2025 年 2 月 26 日

androidx.xr.runtime:runtime:1.0.0-alpha03androidx.xr.runtime:runtime-openxr:1.0.0-alpha03androidx.xr.runtime:runtime-testing:1.0.0-alpha03 已发布,自上一个 alpha 版本以来没有显著变化。版本 1.0.0-alpha03 包含这些提交

版本 1.0.0-alpha02

2025 年 2 月 12 日

androidx.xr.runtime:runtime:1.0.0-alpha02androidx.xr.runtime:runtime-openxr:1.0.0-alpha02androidx.xr.runtime:runtime-testing:1.0.0-alpha02 已发布。版本 1.0.0-alpha02 包含这些提交

破坏性与行为更改

  • 返回 Anchor 的 OpenXR 运行时函数现在在遇到错误代码通知 OpenXR 资源限制已达上限时,会抛出 AnchorResourcesExhaustedException
  • Session.createSession.resume 现在需要 android.permission.HAND_TRACKING 权限。

新功能

  • 添加了手部追踪支持。

错误修复

  • 在模拟器上运行时,创建锚点更加稳定

版本 1.0.0-alpha01

2024 年 12 月 12 日

androidx.xr.runtime:runtime-* 1.0.0-alpha01 已发布。

初始版本的功能

Jetpack XR Runtime 的初始版本。此库包含 Jetpack XR 库套件的基本功能。这包括功能发现、生命周期管理、配置等。Runtime 库根据执行平台提供不同的变体(例如 runtime-openxrruntime-testing)。此外,此库还提供了基本的数学抽象,例如在整个 Jetpack XR API 表面使用的 Vector3Matrix4

  • Session:为您提供对 XR 系统的精细控制,包括决定何时执行和不执行处理以及整体配置。它也是您在所有其他 API 中将使用的句柄,用于解锁底层系统功能。

  • Pose:任意坐标系中的一个位置,具有与之关联的位置和方向。您将使用此类与 Jetpack XR 的 ARCore 和 Jetpack SceneCore 通信对象的位置。

已知问题

  • configure 目前是一个空操作。未来的版本将添加新的设置,您可以使用这些设置来控制 Session 的行为。