XR ランタイム
| 最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
|---|---|---|---|---|
| 2025 年 10 月 22 日 | - | - | - | 1.0.0-alpha07 |
依存関係の宣言
XR ランタイムへの依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、 Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { implementation "androidx.xr.runtime:runtime:1.0.0-alpha07" // Optional dependencies for asynchronous conversions implementation "androidx.xr.runtime:runtime-guava:1.0.0-alpha07" implementation "androidx.xr.runtime:runtime-rxjava3:1.0.0-alpha07" // Use in environments that do not support OpenXR testImplementation "androidx.xr.runtime:runtime-testing:1.0.0-alpha07" }
Kotlin
dependencies { implementation("androidx.xr.runtime:runtime:1.0.0-alpha07") // Optional dependencies for asynchronous conversions implementation("androidx.xr.runtime:runtime-guava:1.0.0-alpha07") implementation("androidx.xr.runtime:runtime-rxjava3:1.0.0-alpha07") // Use in environments that do not support OpenXR testImplementation("androidx.xr.runtime:runtime-testing:1.0.0-alpha07") }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
バージョン 1.0
バージョン 1.0.0-alpha07
2025 年 10 月 22 日
androidx.xr.runtime:runtime-*:1.0.0-alpha07 がリリースされました。バージョン 1.0.0-alpha07 にはこれらの commit が含まれています。
API の変更
SessionConfigureConfigureNotSupportedを削除し、UnsupportedOperationExceptionに置き換えます。(I7680f)
バージョン 1.0.0-alpha06
2025 年 9 月 24 日
androidx.xr.runtime:runtime-*:1.0.0-alpha06 がリリースされました。バージョン 1.0.0-alpha06 にはこれらの commit が含まれています。
API の変更
HandJointTypeがxr:runtime:runtimeからxr:arcore:arcoreに移動しました。(Iadb9c、b/409058039)componentWiseMultiplicationの乗算演算子をVector2、Vector3、Vector4のスケーリングに変更し、他の数学ライブラリとの整合性を保つために演算子記号を削除しました。また、Vector.scale(otherVector.inverse())を使用する代わりに、Vector クラスからcomponentWiseDivisionを削除します。(I8e1f6、b/399146447)- [unscaled] を追加して、スケールが 1 の Matrix を返します。(I6381d、b/434928658)
Coroutines.ktがSuspendtoFutureAdapterに置き換えられたため、:xr:runtime:runtime-guavaは削除されます。(I0cd3c、b/406597902)
バージョン 1.0.0-alpha05
2025 年 7 月 30 日
androidx.xr.runtime:runtime-*:1.0.0-alpha05 がリリースされました。バージョン 1.0.0-alpha05 には、これらの commit が含まれています。
新機能
HandJointTypeとTrackingStateを追加します。(I55880、b/334645808)- Config 実装を公開しました。(I95860、b/334645808)
- 新しい
SessionCreateResult型とSessionConfigureResult型を導入しました。(Icb8cb、b/334645808) - 最小コーナー ポイントと最大コーナー ポイントで定義される、3D 空間内の軸に沿ったバウンディング ボックスを表す新しい
BoundingBoxクラスを追加しました。(Ic68c5、b/423073468)
API の変更
androidx.xr.scenecore.PixelDimensionsの名前を変更してandroidx.xr.runtime.math.IntSize2dに移動しました。androidx.xr.scenecore.Dimensionsの名前を変更してandroidx.xr.runtime.math.FloatSize3dに移動しました。androidx.xr.scenecore.PlaneTypeの名前をandroidx.xr.scenecore.PlaneOrientationに変更しました。androidx.xr.scenecore.PlaneSemanticの名前をandroidx.xr.scenecore.PlaneSemanticTypeに変更しました。(Ifd405、b/416456228)androidx.xr.runtime.FoVクラスを削除しました。代わりにandroidx.xr.runtime.FieldOfViewを使用してください。(I9ae27)- セッションにアタッチする
LifecycleOwnerを提供できるSession.createのオーバーロードを追加しました。リソースの所有権には引き続きアクティビティを指定する必要があり、LifecycleOwnerはアクティビティ内でスコープ設定する必要があります。(I1690b) FakeRuntimeAnchor.anchorsCreatedの名前をanchorsCreatedCountに変更しました(I96df9、b/424441218)- 動作を反映するように、構成
*Mode値の名前が変更されました。(I6d247、b/414648065) - Kotlin 2.0 でリリースされたプロジェクトでは、KGP 2.0.0 以降を使用する必要があります(Idb6b5、b/344563182)
- マニフェスト文字列に関連する API が
:xr:runtime:runtimeから:xr:runtime:runtime-manifestに移動されました。パッケージ名がandroidx.xr.runtimeからandroidx.xr.runtime.manifestに変更されました。(I610ad、b/418800249) Session.resume()、Session.pause()、Session.destroy()が API サーフェスから削除されました。セッションはLifecycleOwnerではなくなりました。Session のライフサイクルが、Session.create()で渡された Activity のライフサイクルに関連付けられるようになりました。(I28a03)- このライブラリは、型使用である JSpecify nullness アノテーションを使用するようになりました。Kotlin デベロッパーは、次のコンパイラ引数を使用して、正しい使用法を適用する必要があります。
-Xjspecify-annotations=strict(これは Kotlin コンパイラのバージョン 2.1.0 以降のデフォルトです)(Ia8420、b/326456246) - メインの Runtime アーティファクト(
:xr:runtime:runtime)には、Kotlin スタイルの非同期 API のみが含まれます。Java デベロッパーは、互換性のある API にアクセスするために:xr:runtime:runtime-guavaに依存できます。(I05d4a、b/426639315) - メインの Runtime アーティファクト(
:xr:runtime:runtime)には、Kotlin スタイルの非同期 API のみが含まれます。Java デベロッパーは、xr:runtime:runtime-rxjava3ライブラリに依存して互換性のある API にアクセスできます。(I64122、b/426639775) - コルーチンを
:xr:runtime:runtime-guavaに、Flow を:xr:runtime:runtime-rxjava3に移動。(I60ae9) Session.createとSession.configureは、十分な権限が付与されていない場合にSessionCreatePermissionsNotGrantedまたはSessionConfigurePermissionsNotGrantedを返すのではなく、SecurityExceptionをスローするようになりました。(I7c488、b/430651879)
バージョン 1.0.0-alpha04
2025 年 5 月 7 日
androidx.xr.runtime:runtime:1.0.0-alpha04、androidx.xr.runtime:runtime-openxr:1.0.0-alpha04、androidx.xr.runtime:runtime-testing:1.0.0-alpha04 がリリースされました。バージョン 1.0.0-alpha04 にはこれらの commit が含まれています。
新機能
- Session が
androidx.lifecycle.LifecycleOwnerを実装し、既存の Android ライフサイクル パラダイムとの相互運用性が向上しました。 - Android XR のマニフェスト文字列は、ここで指定され、ドキュメント化されています。
- シーン コンテンツがユーザーの視野の内外に移動したタイミングをモニタリングするために、空間の可視性コールバック拡張メソッドが追加されました。
JxrPlatformAdapter(および関連するすべてのクラス)のスタブ バージョンを追加しました。SceneCoreの Session ではなく、SceneCoreと Runtime の両方で Session が使用されます。ActivityPose.hitTestが追加され、仮想コンテンツに対するhitTestが有効になりました。- コンパイル時に複数の Runtime 実装を指定できるようになりました。現在のデバイスの機能セットに基づいて、実行時に 1 つだけが読み込まれます。
- 新しいコンポーネント タイプ
SpatialPointerComponentを追加しました。これにより、クライアントはポインタ用にレンダリングされるアイコンを指定したり、アイコンを無効にしたりできます。このコンポーネントは現在、PanelEntityインスタンスにのみアタッチできます。
API の変更
- Config 実装を公開しました。(I95860)
HandJointTypeとTrackingStateを追加します。(I55880)- Kotlin 2.0 でリリースされたプロジェクトを使用するには、KGP 2.0.0 以降が必要です(Idb6b5)
Hand.isActive (boolean)がHand.trackingStateに変更されました。OpenXRの実装がそれに応じて変更されました。Session.configureのandroid.permission.SCENE_UNDERSTANDING権限の要件がandroid.permission.SCENE_UNDERSTANDING_COARSEに変更されました。LifecycleManager.configureが実装され、構成可能な各ランタイム機能のプロパティを含むConfigオブジェクトが渡されるようになりました。Session.configureをConfigで呼び出して、利用可能なランタイム機能を構成できるようになりました。Session.createで、CoroutineDispatcherではなくCoroutineContextを渡せるようになりました。Session.createは、Jetpack XR のARCoreやSceneCoreの読み込みをサポートします。少なくとも 1 つを指定する必要があります(テスト バージョンを利用できます)。FakePerceptionManagerは、無効な UUID がAnchor.loadとAnchor.unpersistに渡されるとAnchorInvalidUuidExceptionをスローします。CoreStateがデータクラスではなくなりました。
バグの修正
- ランタイムの ProGuard 構成を修正しました。
バージョン 1.0.0-alpha03
2025 年 2 月 26 日
androidx.xr.runtime:runtime:1.0.0-alpha03、androidx.xr.runtime:runtime-openxr:1.0.0-alpha03、androidx.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-alpha02、androidx.xr.runtime:runtime-openxr:1.0.0-alpha02、androidx.xr.runtime:runtime-testing:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 にはこれらの commit が含まれています。
互換性を破る変更と動作の変更
- Anchor を返す
OpenXRランタイム関数は、OpenXRリソースの上限に達したことを示すエラーコードが発生した場合、AnchorResourcesExhaustedExceptionをスローするようになりました。 Session.createとSession.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-openxr や runtime-testing など)を提供します。また、このライブラリは、Jetpack XR API サーフェス全体で使用される Vector3 や Matrix4 などの基本的な数学的抽象化を提供します。
Session: 処理の実行の有無や全体的な構成の決定など、XR システムをきめ細かく制御できます。また、基盤となるシステム機能をアンロックするために、他のすべての API で使用するハンドルでもあります。Pose: 任意座標系内の位置。位置と向きが関連付けられています。このクラスを使用して、Jetpack XR と Jetpack SceneCore の ARCore とオブジェクトの位置を通信します。
既知の問題