Android XR SDK 最新动态: 开发者预览版 4 现已推出
作者 / 小组产品经理 Stevan Silva 及开发者关系工程师 Amy Zeppenfeld
我们日前发布了 Android XR SDK 开发者预览版 4,以便继续致力于统一头戴式设备、有线 XR 眼镜和智能眼镜的跨设备开发。为了保持平台的直观易懂,我们的设备形态将采用更具描述性的命名方式。其中,AI 眼镜将更名为音频眼镜 (audio glasses),而显示 AI 眼镜将更名为显示眼镜 (display glasses),这些变更已在官方开发者文档中同步生效。
智能眼镜 https://blog.google/products-and-platforms/platforms/android/android-xr-io-2026
此版本包含诸多更新,可帮助您为 XR 设备构建令人惊艳的体验,在 XR 头戴式设备上实现更深层次的沉浸式体验,并简化在音频眼镜和显示眼镜上创建增强体验的路径。此外,我们的核心库 (包括 XR Runtime、Jetpack SceneCore 和 ARCore for Jetpack XR) 将在近期正式进入 Beta 版!
为助您抢先体验相关硬件和资源,以便在即将推出的设备 (如显示眼镜、音频眼镜以及 XREAL 的 Project Aura) 上构建沉浸式和增强体验,我们将会推出 Android XR Developer Catalyst 计划。欢迎您了解详情并开始申请。
Android XR Developer Catalyst 计划 https://goo.gle/Catalyst_IO26
开始申请 http://g.co/dev/catalyst
为音频眼镜和显示眼镜打造增强体验
从我们的增强体验库开始,开发者预览版 4 引入了可助您创建和测试应用的全新 API。
Jetpack Projected:
设备可用性 (Device Availability)
和 ProjectedTestRule API
Jetpack Projected 库有助于将应用体验从手机端延展到用户的视野中。我们添加了设备可用性 API,该 API 可将佩戴状态和连接信号整合到标准 Android Lifecycle.State 值中。这样您就可以根据设备的佩戴状态来调整应用行为。
val xrDevice = XrDevice.getCurrentDevice(projectedContext)// Observe the device lifecycle flowxrDevice.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 */ }}}
设备可用性 API https://developer.android.com/develop/xr/jetpack-xr-sdk/ai-glasses/check-availability
Lifecycle.State https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State
为了简化测试流程,projected-testing 工件中的全新的 ProjectedTestRuleAPI 可自动设置投射测试环境。这有助于您在没有样板代码的情况下编写整洁、可靠的单元测试。
// from the 'androidx.xr.projected:projected-testing:1.0.0-alpha07' artifact@get:Ruleval projectedTestRule = ProjectedTestRule()@TestfuntestProjectedContextInitialization() {// by default, ProjectedTestRule automatically creates and connects// a projected device before each testval projectedContext = ProjectedContext.createProjectedDeviceContext(context)// assert the projected context is successfully initializedassertThat(projectedContext).isNotNull()}
ProjectedTestRule https://developer.android.com/reference/kotlin/androidx/xr/projected/testing/ProjectedTestRule
Jetpack Compose Glimmer:
Google Sans Flex 和新组件
我们的显示眼镜界面库 Jetpack Compose Glimmer 现包含 Google Sans Flex 字体,以提高在光学透视显示屏上的可读性。我们还添加了几个交互式组件:
Stacks: 专为触控板优化的分组设计,一次显示一个项目。
Title Chips: 为内容卡片提供分类和上下文。
Google Sans Flex https://fonts.google.com/specimen/Google+Sans+Flex Stacks https://developer.android.com/develop/xr/jetpack-xr-sdk/jetpack-compose-glimmer/vertical-stacks Title Chips https://developer.android.com/develop/xr/jetpack-xr-sdk/jetpack-compose-glimmer/title-chips
为 XR 头戴式设备和有线 XR 眼镜打造沉浸式体验
如果您希望为 XR 头戴式设备和有线 XR 眼镜打造完全沉浸式的体验,我们也为您带来了几项重大更新。
Beta 版过渡及现代架构
XR Runtime、Jetpack SceneCore 和 ARCore for Jetpack XR 感知功能 (深度图、眼部/手部追踪、命中测试和空间锚点) 很快就会迁移到 Beta 版,为此我们简化了 Jetpack XR API。我们也移除了旧版 Guava 和 RxJava3 软件包,转而采用现代化的 Kotlin 优先架构。
深度图 https://developer.android.com/develop/xr/jetpack-xr-sdk/arcore/depth
眼部/手部追踪 https://developer.android.com/develop/xr/jetpack-xr-sdk/arcore/face
空间锚点 https://developer.android.com/develop/xr/jetpack-xr-sdk/arcore/anchors
Jetpack SceneCore:
glTF 和自定义网格 (Custom Meshes)
我们通过添加微调 3D 模型以及访问 3D 模型特定节点的功能,来扩展 3D 模型的能力。您可以使用 GltfModelNode 来修改姿态、材质和纹理等属性,甚至可以在特定节点运行动画。
// Create a new PBR materialpbrMaterial = 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 occlusionpbrMaterial.setOcclusionTexture(texture = texture,strength = 0.5f)// Access the hierarchy of nodesval entityNodes = entity.nodes// Find the specific nodeval myEntityNode = entityNodes.find { it.name == "node_name" }// Apply the PBR material overridemyEntityNode?.setMaterialOverride(material = newMaterial)
GltfModelNode https://developer.android.com/reference/androidx/xr/scenecore/GltfModelNode
动画 https://developer.android.com/reference/kotlin/androidx/xr/scenecore/GltfAnimation
我们还在 SceneCore 中引入了自定义网格功能。借助该功能,您能够以编程方式动态构建几何体,是创建自定义 3D 模型的理想选择。该功能将作为实验性功能发布,欢迎试用并与我们分享您的反馈!
// Create the meshval roadMesh =CustomMesh.BuilderFromMeshData(session, roadVertexLayout).addVertexData(ByteBufferRegion(roadDataBuffer, 0, vertexDataSize)).setIndexData(ByteBufferRegion(roadDataBuffer, vertexDataSize, indexDataSize)).setTopology(MeshSubsetTopology.TRIANGLES).build()// Define the materialval roadMaterial = KhronosPbrMaterial.create(session, AlphaMode.OPAQUE)// Instantiate the entity using the custom mesh and materialval roadEntity =MeshEntity.create(session,roadMesh,listOf(roadMaterial),pose = roadPose,)
Compose for XR: 原生 glTF 支持
同时,我们将通过 SpatialGltfModel 直接在 Compose for XR 中提供原生 glTF 支持。
将此与 SpatialGltfModelState 配合使用,即可访问 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)
SpatialGltfModel https://developer.android.com/reference/kotlin/androidx/xr/compose/subspace/SpatialGltfModel.composable
SpatialGltfModelState https://developer.android.com/reference/kotlin/androidx/xr/compose/subspace/SpatialGltfModelState#SpatialGltfModelState(androidx.xr.compose.subspace.SpatialGltfModelSource)
节点 https://developer.android.com/reference/kotlin/androidx/xr/compose/subspace/SpatialGltfModelState#nodes()
动画 https://developer.android.com/reference/kotlin/androidx/xr/compose/subspace/SpatialGltfModelState#animations()
ARCore for Jetpack XR:
适用于有线 XR 眼镜的 Geospatial API 预览版
我们还将在 ARCore for Jetpack XR 中提供适用于有线 XR 眼镜的 Geospatial API 的早期预览版本。这项更新可以在超过 87 个国家/地区内将数字内容与现实位置进行高精度锚定。
通过将 ARCore 的视觉定位系统 (VPS) 与 Gemini Live API 的推理和音频功能相结合,您可以创建理解用户所处地理位置和空间姿态的上下文感知体验。想象一下,您可以构建一个由 AI 负责导览的沉浸式徒步旅程,它可以提供附近地点的实时音频描述,将数字信息与物理环境无缝融合。
立即开始构建未来
现在正是开发 Android XR 应用的绝佳时机。Jetpack XR SDK 即将推出 Beta 版,还有一套强大的全新工具可供您随时取用,您可以借此探索以下各个方面,让您的应用体验为适配 XR 环境做好准备!
阅读文档,探索示例,了解各种 XR 实验项目
您可以访问 Android 开发者官方网站,获取完整的技术指南、API 参考资料以及有关设置新模拟器的说明。通过我们的示例和实验项目获得灵感。了解我们如何使用这些 API 构建沉浸式空间布局、加载 3D 模型、探索空间音频等!
访问 Android XR 网页:
http://developer.android.com/xr
探索 XR 示例:
https://developer.android.com/develop/xr/samples
探索 XR 实验项目:
https://developer.android.com/develop/xr/experiments
了解面向游戏引擎的最新动态
我们添加了对虚幻引擎和 Godot 的官方支持,并推出了两款新工具,用于加速使用 Unity 和 Android XR 交互框架的 Android XR 开发。另外,根据大家的反馈,我们还将推出 Android XR Engine Hub,帮助您直接在自己偏好的引擎上运行体验。
阅读相关博文,了解面向游戏引擎的最新动态:
https://android-developers.googleblog.com/2026/05/android-xr-updates-unity-unreal-godot.html
虚幻引擎 https://www.unrealengine.com/ Godot https://godotengine.org/ Android XR 交互框架 https://developer.android.com/xr/axrif Android XR Engine Hub https://developer.android.com/xr/engine-hub
申请加入
Android XR Developer Catalyst 计划
也提醒您千万别错过为最新 Android XR 硬件构建应用产品的机会。立即申请,您将有机会获得预发布版本的硬件,包括我们的音频和显示眼镜原型,以及 XREAL 的 Project Aura。
立即了解详情并申请:
http://g.co/dev/catalyst
今年晚些时候,我们即将推出更多 Android XR 设备,期待看到您打造的精彩 XR 体验!
欢迎访问 io.google,查看 Google I/O 2026 的所有最新动态。也欢迎您持续关注 "谷歌开发者" 微信公众号,及时了解更多开发技术和产品更新等资讯动态。
io.google https://io.google/2026/?utm_source=blogpost&utm_medium=pr&utm_campaign=devblogs&utm_content