本日、Android XR SDK のデベロッパー プレビュー 4 をリリースしました。引き続き、ヘッドセット、有線 XR グラス、インテリジェント アイウェア向けのクロスデバイス開発の統合に注力していきます。プラットフォームの直感性を維持するため、フォーム ファクタの命名をより説明的なものに変更します。AI グラスはオーディオ グラス、ディスプレイ AI グラスはディスプレイ グラスとなります。これらの変更は、本日よりドキュメントに反映されます。
このリリースには、XR デバイス向けの優れたエクスペリエンスの構築、XR ヘッドセットでの没入感の高いエクスペリエンスの実現、オーディオ グラスやディスプレイ グラスでの拡張エクスペリエンスの作成パスの効率化に役立つアップデートが満載されています。また、XR Runtime、Jetpack SceneCore、Jetpack XR 向け ARCore などのコア ライブラリも、まもなく正式にベータ版に移行します。
ディスプレイ グラスやオーディオ グラス、XREAL の Project Aura などの今後のデバイスで、没入型エクスペリエンスや拡張エクスペリエンスを構築するためのハードウェアやリソースにいち早くアクセスできるように、Android XR デベロッパー カタリスト プログラムを発表します。詳細をご確認のうえ、今すぐお申し込みください。
オーディオ グラスとディスプレイ グラス向けの拡張エクスペリエンスの構築
拡張エクスペリエンス用のライブラリから始まり、デベロッパー プレビュー 4 では、アプリの作成とテストに役立つ新しい API が導入されています。
Jetpack Projected: デバイスの可用性と ProjectedTestRule API
Jetpack Projected ライブラリは、スマートフォンのアプリ エクスペリエンスをユーザーの画角に投影するのに役立ちます。Device Availability API を追加しました。この API は、装着状態と接続状態のシグナルを標準の Android Lifecycle.State 値に統合します。これにより、デバイスが装着されているかどうかに基づいてアプリの動作を調整できます。
val xrDevice = XrDevice.getCurrentDevice(projectedContext) // Observe the device lifecycle flow xrDevice.getLifecycle().currentStateFlow .collect { state -> when (state) { Lifecycle.State.STARTED -> { /* Device is available (worn) */ } Lifecycle.State.CREATED -> { /* Device is unavailable (not worn) */ } Lifecycle.State.DESTROYED -> { /* Device is DISCONNECTED */ } } }
テストを簡素化するため、projected-testing アーティファクトの新しい ProjectedTestRule API は、予測テスト環境の設定を自動化します。これにより、ボイラープレート コードなしで、クリーンで信頼性の高い単体テストを作成できます。
// from the 'androidx.xr.projected:projected-testing:1.0.0-alpha07' artifact @get:Rule val projectedTestRule = ProjectedTestRule() @Test fun testProjectedContextInitialization() { // by default, ProjectedTestRule automatically creates and connects // a projected device before each test val projectedContext = ProjectedContext.createProjectedDeviceContext(context) // assert the projected context is successfully initialized assertThat(projectedContext).isNotNull() }
Jetpack Compose Glimmer: Google Sans Flex と新しいコンポーネント
ディスプレイ メガネ用の UI ライブラリである Jetpack Compose Glimmer に、光学シースルー ディスプレイの視認性を向上させる Google Sans Flex が追加されました。また、インタラクティブなコンポーネントもいくつか追加しました。
XR ヘッドセットと有線 XR グラス向けの没入型エクスペリエンスの構築
XR ヘッドセットと有線 XR グラス向けの没入型エクスペリエンスを構築したい場合は、いくつかの大きなアップデートがあります。
ベータ版の移行と最新のアーキテクチャ
XR ランタイム、Jetpack SceneCore、Jetpack XR 認識機能(デプスマップ、視線/手のトラッキング、ヒットテスト、空間アンカー)がまもなくベータ版に移行するため、Jetpack XR API を合理化しました。最新の Kotlin ファーストのアーキテクチャを優先するため、以前の Guava パッケージと RxJava3 パッケージを削除しました。
Jetpack SceneCore: glTF とカスタム メッシュ
3D モデルの機能を拡張し、3D モデルを微調整したり、3D モデルで特定のノードにアクセスしたりできるようになりました。GltfModelNode を使用すると、ポーズ、マテリアル、テクスチャなどのプロパティを変更したり、特定のノードで アニメーションを実行したりできます。
// Create a new PBR material pbrMaterial = KhronosPbrMaterial.create( session = xrSession, alphaMode = AlphaMode.OPAQUE ) // Load a texture. val texture = Texture.create( session = xrSession, path = Path("textures/texture_name.png") ) // Apply the texture and configure occlusion to define how the material handles ambient lighting. pbrMaterial.setOcclusionTexture( texture = texture, strength = 0.5f ) // Access the hierarchy of nodes within the model entity. val entityNodes = entity.nodes // Find the specific node to apply the material override. val myEntityNode = entityNodes.find { it.name == "node_name" } // Apply the PBR material to the node. myEntityNode?.setMaterialOverride( material = newMaterial )
また、SceneCore にカスタム メッシュも導入します。カスタム メッシュを使用すると、プログラムでジオメトリをその場で構築できます。これは、カスタム 3D モデルの作成に最適です。この機能は試験運用版としてリリースされます。ぜひお試しいただき、ご感想をお聞かせください。
// Create the mesh val roadMesh = CustomMesh.BuilderFromMeshData(session, roadVertexLayout) .addVertexData(ByteBufferRegion(roadDataBuffer, 0, vertexDataSize)) .setIndexData(ByteBufferRegion(roadDataBuffer, vertexDataSize, indexDataSize)) .setTopology(MeshSubsetTopology.TRIANGLES) .build() // Define the material val roadMaterial = KhronosPbrMaterial.create(session, AlphaMode.OPAQUE) // Instantiate the entity using the custom mesh and material val roadEntity = MeshEntity.create( session, roadMesh, listOf(roadMaterial), pose = roadPose, )
Compose for XR: ネイティブ glTF サポート
Compose for XR で SpatialGltfModel を使用して、glTF をネイティブにサポートできるようになりました。SpatiallGltfModelState とともに使用して、glTF モデルのノードとアニメーションにアクセスしたり、3D モデルにテクスチャやマテリアルを追加したりします。
val myGltfModelState = rememberSpatialGltfModelState( source = SpatialGltfModelSource.fromPath( Paths.get("models/my_animated_model.glb") ) ) val myGltfAnimation = myGltfModelState.animations.find { it.name == "animation_name" } DisposableEffect(myGltfAnimation) { myGltfAnimation?.loop() onDispose { myGltfAnimation?.stop() } } SpatialGltfModel(state = myGltfModelState, modifier = modifier)
Jetpack XR 向け ARCore: 有線 XR グラス向けの Geospatial API プレビュー
また、Jetpack XR の ARCore で、有線 XR グラス向けの Geospatial API の早期プレビューも提供しています。このアップデートにより、87 か国以上で現実世界の場所に結び付けられたデジタル コンテンツを高い精度でアンカーできるようになります。
ARCore の Visual Positioning System(VPS)と Gemini Live API の推論機能および音声機能を組み合わせることで、ユーザーの位置と場所の両方を把握するコンテキスト認識エクスペリエンスを作成できます。近くの場所の音声説明をリアルタイムで提供し、デジタル情報を物理環境にシームレスに統合する、没入型の AI ガイド付きウォーキング ツアーを構築することを想像してみてください。
今すぐ未来を築き始めましょう
Android XR 向けの開発は今が絶好の機会です。Jetpack XR SDK がまもなくベータ版に移行し、強力な新しいツールセットが利用可能になるため、以下の各分野を検討して、アプリのエクスペリエンスを XR に対応させましょう。
ドキュメントを読み、サンプルを試し、XR の試験運用を確認する
Android デベロッパーの公式サイトで、技術ガイド、API リファレンス、新しいエミュレータの設定手順をご覧ください。サンプルとテストからアイデアを得る。これらの API を使用して、没入感のある空間レイアウトの構築、3D モデルの読み込み、空間オーディオの探索などを行う方法をご覧ください。
ゲームエンジンの新機能をチェックする
Unreal Engine と Godot の公式サポートを追加し、Unity と Android XR Interaction Framework を使用した Android XR の開発を加速する 2 つの新しいツールをリリースしました。また、皆様からのフィードバックに基づき、お好みのエンジンから直接エクスペリエンスを実行できるようにする Android XR Engine Hub を導入します。
Android XR デベロッパー カタリスト プログラムに申し込む
最新の Android XR ハードウェア向けに開発するチャンスをお見逃しなく。オーディオ グラスとディスプレイ グラスのプロトタイプや XREAL の Project Aura など、リリース前のハードウェアにアクセスできる機会をぜひお見逃しなく。
今年後半に Android XR デバイスがさらにリリースされる予定ですので、皆様が構築する素晴らしい XR エクスペリエンスを拝見できることを楽しみにしております。
このお知らせと Google I/O 2026 のすべての最新情報は、io.google でご覧ください。
続きを読む
-
プロダクト ニュース
Android XR で Unreal Engine と Godot の公式サポートが開始されました。また、生産性を高め、新しい XR 機能を有効にするように設計された新しいツール(Android XR Engine Hub と Android XR Interaction Framework)もリリースします。
Luke Hopkins • 所要時間: 4 分
-
プロダクト ニュース
Android 17 のリリースに伴い、アダプティブ ファーストの開発標準に移行します。ユーザーは単一のフォーム ファクタに依存しなくなりました。1 日を通して、スマートフォン、折りたたみ式デバイス、タブレット、ノートパソコン、自動車用ディスプレイ、没入型 XR 環境を切り替えて使用しています。
Fahd Imtiaz • 所要時間: 4 分
-
プロダクト ニュース
コンテンツの検出可能性を高め、将来のテレビ エクスペリエンスに向けてアプリを準備するために設計された Google TV の機能とデベロッパー ツールをご紹介します。
Paul Lammertsma • 所要時間: 4 分
最新情報の入手
Android 開発に関する最新の分析情報を毎週メールでお届けします。