XR ランタイム

ネイティブ ランタイムを使用してカスタム AR または 3D セッションを開始します。
最新の更新 安定版リリース リリース候補版 ベータ版リリース アルファ版リリース
2025 年 5 月 7 日 - - - 1.0.0-alpha04

依存関係の宣言

XR ランタイムへの依存関係を追加するには、Google Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、 Google の Maven リポジトリをご覧ください。

アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。

GroovyKotlin
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"
}
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 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。

新しい問題を報告する

詳細については、Issue Tracker のドキュメントをご覧ください。

バージョン 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 に含まれる commit はこちらをご覧ください。

新機能

  • セッションに androidx.lifecycle.LifecycleOwner を実装し、既存の Android ライフサイクル パラダイムとの相互運用性を高めました。
  • Android XR のマニフェスト文字列は、ここで指定され、説明されています。
  • シーン コンテンツがユーザーの視界内または視界外に移動したタイミングをモニタリングするための、空間可視性コールバック拡張メソッドが追加されました。
  • JxrPlatformAdapter(および関連するすべてのクラス)のスタブ バージョンを追加しました。
  • SceneCore の Session の代わりに、SceneCore と Runtime の両方で Session が使用されます。
  • ActivityPose.hitTest が追加され、仮想コンテンツに対する hitTest が可能になりました。
  • コンパイル時に複数のランタイム実装を指定できるようになりました。実行時に読み込まれるのは、現在のデバイスの機能セットに基づいて 1 つだけです。
  • 新しいコンポーネント タイプ SpatialPointerComponent を追加しました。これにより、クライアントはポインタにレンダリングされるアイコンを指定したり、アイコンを無効にしたりできるようになりました。現在、このコンポーネントは PanelEntity インスタンスにのみアタッチできます。

API の変更

  • Config の実装を公開しました。(I95860
  • HandJointTypeTrackingState を追加します。(I55880
  • Kotlin 2.0 でリリースされたプロジェクトでは、KGP 2.0.0 以降を使用する必要があります(Idb6b5
  • Hand.isActive (boolean)Hand.trackingState に変更されました。OpenXR の実装がそれに応じて変更されました。
  • Session.configureandroid.permission.SCENE_UNDERSTANDING 権限要件が android.permission.SCENE_UNDERSTANDING_COARSE に変更されました。
  • LifecycleManager.configure が実装され、構成可能なランタイム機能ごとにプロパティを含む Config オブジェクトが渡されるようになりました。
  • Session.configureConfig で呼び出して、利用可能なランタイム機能を構成できるようになりました。
  • Session.create で、CoroutineDispatcher ではなく CoroutineContext を渡せるようになりました。
  • Session.create は、Jetpack XR の ARCoreSceneCore の読み込みをサポートしています。少なくとも 1 つ指定する必要があります(テスト版を使用できます)。
  • Anchor.loadAnchor.unpersist に無効な UUID が渡されると、FakePerceptionManagerAnchorInvalidUuidException をスローします。
  • CoreState はデータクラスではなくなりました。

バグの修正

  • ランタイムの 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 がリリースされました。前回のアルファ版からの変更はありません。バージョン 1.0.0-alpha03 には、これらの commit が含まれています。

バージョン 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 には、これらの commit が含まれています。

互換性と動作の変更

  • アンカーを返す 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 ランタイムの初回リリース。このライブラリには、Jetpack XR ライブラリ スイートの基本的な機能が含まれています。これには、機能の検出、ライフサイクル管理、構成などが含まれます。ランタイム ライブラリには、実行プラットフォームに応じてさまざまなバリエーション(runtime-openxrruntime-testing など)が用意されています。また、このライブラリには、Jetpack XR API サーフェス全体で使用される Vector3Matrix4 などの基本的な数学抽象化が用意されています。

  • Session: 処理の実行と実行の不実行の決定や全体的な構成など、XR システムをきめ細かく制御できます。また、他のすべての API で基盤となるシステム機能をロック解除するために使用するハンドルでもあります。

  • Pose: 任意の座標系内の位置と向きが関連付けられた位置。このクラスを使用して、Jetpack XR の ARCore と Jetpack SceneCore にオブジェクトの位置を伝えます。

既知の問題

  • configure は現在、無効です。今後のリリースでは、Session の動作を制御するために使用できる新しい設定が追加されます。