Heute stellen wir die Entwicklervorschau 4 des Android XR SDK vor. Wir konzentrieren uns weiterhin darauf, die geräteübergreifende Entwicklung für Headsets, kabelgebundene XR‑Datenbrillen und intelligente Brillen zu vereinheitlichen. Um unsere Plattform intuitiv zu gestalten, verwenden wir beschreibendere Namen für unsere Formfaktoren. So werden KI‑Brillen jetzt als Audiobrillen und KI‑Brillen mit Display als Displaybrillen bezeichnet. Diese Änderungen sind ab heute in unserer Dokumentation zu finden.
Diese Version enthält viele Updates, mit denen Sie beeindruckende Erlebnisse für XR‑Geräte entwickeln, immersivere Erlebnisse auf XR‑Headsets ermöglichen und den Weg für die Erstellung von Augmented-Reality-Erlebnissen auf Audio- und Displaybrillen vereinfachen können. Außerdem werden unsere Kernbibliotheken, darunter XR Runtime, Jetpack SceneCore und ARCore for Jetpack XR, bald offiziell in die Beta-Phase überführt.
Um Ihnen frühzeitigen Zugriff auf Hardware und Ressourcen für die Entwicklung immersiver und Augmented-Reality-Erlebnisse auf kommenden Geräten wie Display- und Audiobrillen und Project Aura von XREAL zu ermöglichen, stellen wir das Android XR Developer Catalyst Program vor. Weitere Informationen und die Möglichkeit zur Bewerbung finden Sie hier.
Augmented-Reality-Erlebnisse für Audio- und Displaybrillen entwickeln
Die Entwicklervorschau 4 enthält neue APIs für unsere Bibliotheken für Augmented-Reality-Erlebnisse, mit denen Sie Ihre Apps erstellen und testen können.
Jetpack Projected: Device Availability und ProjectedTestRule APIs
Mit der Jetpack Projected-Bibliothek können App-Erlebnisse vom Smartphone in das Sichtfeld des Nutzers übertragen werden. Wir haben die Device Availability API hinzugefügt,die den Tragezustand und die Verbindungssignale in Standardwerte für Lifecycle.State von Android zusammenfasst. So können Sie das Verhalten Ihrer Anwendungen anpassen, je nachdem, ob das Gerät getragen wird.
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 */ } } }
Um das Testen zu vereinfachen, automatisiert die neue ProjectedTestRule API im Artefakt „projected-testing“ die Einrichtung von Testumgebungen für projizierte Inhalte. So können Sie saubere, zuverlässige Unittests ohne Boilerplate-Code schreiben.
// 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 und neue Komponenten
Unsere UI-Bibliothek für Displaybrillen, Jetpack Compose Glimmer, enthält jetzt Google Sans Flex für eine bessere Lesbarkeit auf optischen See-Through-Displays. Außerdem haben wir mehrere interaktive Komponenten hinzugefügt:
- Stacks: Für Touchpad-optimierte Gruppen entwickelt, wobei jeweils ein Element angezeigt wird.
- Title Chips: Bietet Kategorisierung und Kontext für Contentkarten.
Immersive Erlebnisse für XR‑Headsets und kabelgebundene XR‑Datenbrillen entwickeln
Wenn Sie vollständig immersive Erlebnisse für XR-Headsets und kabelgebundene XR-Datenbrillen entwickeln möchten, haben wir einige wichtige Updates.
Übergang zur Beta-Phase und moderne Architektur
XR Runtime, Jetpack SceneCore und die Wahrnehmungsfunktionen von ARCore for Jetpack XR (Tiefenkarten, Augen-/Hand-Tracking, Treffertests und räumliche Anker) werden bald in die Beta-Phase überführt. Daher haben wir die Jetpack XR APIs optimiert. Wir haben ältere Guava- und RxJava3-Pakete durch eine moderne, Kotlin-basierte Architektur ersetzt.
Jetpack SceneCore: glTF und benutzerdefinierte Meshes
Wir erweitern die Funktionen für 3D‑Modelle, indem wir die Möglichkeit hinzufügen, 3D‑Modelle zu optimieren und auf bestimmte Knoten in einem 3D‑Modell zuzugreifen. Mit GltfModelNode können Sie Eigenschaften wie Pose, Materialien und Texturen ändern und sogar Animationen für bestimmte Knoten ausführen.
// 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 )
Außerdem führen wir benutzerdefinierte Meshes in SceneCore ein. Mit benutzerdefinierten Meshes können Sie Geometrie programmatisch im laufenden Betrieb erstellen. Das ist ideal für die Erstellung benutzerdefinierter 3D‑Modelle. Diese Funktion wird als experimentell eingeführt. Probieren Sie sie aus und teilen Sie uns Ihre Meinung mit.
// 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: Native glTF-Unterstützung
Wir bieten jetzt native glTF-Unterstützung direkt in Compose for XR mit SpatialGltfModel. Verwenden Sie diese Funktion zusammen mit SpatiallGltfModelState, um auf Knoten und Animationen im glTF-Modell zuzugreifen oder Texturen und Materialien zu Ihren 3D‑Modellen hinzuzufügen.
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)
ARCore for Jetpack XR: Vorschau der Geospatial API für kabelgebundene XR‑Datenbrillen
Außerdem bieten wir eine Frühe Vorabversion der Geospatial API für kabelgebundene XR-Datenbrillen in ARCore for Jetpack XR. Mit diesem Update können digitale Inhalte in über 87 Ländern mit hoher Genauigkeit an realen Orten verankert werden.
Durch die Kombination des Visual Positioning System (VPS) von ARCore mit den Schlussfolgerungs- und Audiofunktionen der Gemini Live API können Sie kontextsensitive Erlebnisse schaffen, die sowohl den Standort als auch die Position des Nutzers berücksichtigen. Stellen Sie sich vor, Sie entwickeln eine immersive, KI‑gestützte Wandertour, die in Echtzeit Audiobeschreibungen von Orten in der Nähe bietet und digitale Informationen nahtlos in die physische Umgebung einfügt.
Schon heute die Zukunft gestalten
Es ist eine aufregende Zeit für die Entwicklung für Android XR. Das Jetpack XR SDK wird bald in die Beta-Phase überführt und Ihnen steht eine Vielzahl neuer Tools zur Verfügung. Nutzen Sie die folgenden Bereiche, um die Erlebnisse Ihrer App für XR vorzubereiten.
Dokumentation lesen, Beispiele ansehen und XR‑Tests ausprobieren
Auf der offiziellen Android-Entwicklerwebsite finden Sie vollständige technische Leitfäden, eine API-Referenz und Anleitungen zum Einrichten des neuen Emulators. Lassen Sie sich von unseren Beispielen und Tests inspirieren. Hier sehen Sie, wie wir diese APIs verwendet haben, um immersive räumliche Layouts zu erstellen, 3D‑Modelle zu laden, räumliches Audio zu erkunden und vieles mehr.
Neues für Game-Engines
Wir haben die offizielle Unterstützung für Unreal Engine und Godot hinzugefügt und zwei neue Tools eingeführt, um die Entwicklung für Android XR mit Unity und dem Android XR Interaction Framework zu beschleunigen. Außerdem führen wir auf Grundlage Ihres Feedbacks den Android XR Engine Hub ein, mit dem Sie Ihre Erlebnisse direkt über Ihre bevorzugte Engine ausführen können.
Für das Android XR Developer Catalyst Program bewerben
Nutzen Sie die Chance, für die neueste Android XR-Hardware zu entwickeln. Bewerben Sie sich noch heute, um Zugriff auf Hardware vor der Veröffentlichung zu erhalten, einschließlich unseres Prototyps für Audio- und Displaybrillen und Project Aura von XREAL.
Weitere Informationen und Bewerbung
Wir freuen uns darauf, die beeindruckenden XR‑Erlebnisse zu sehen, die Sie entwickeln, während wir uns auf die Einführung weiterer Android XR-Geräte im Laufe dieses Jahres vorbereiten.
Weitere Informationen zu dieser Ankündigung und allen Updates der Google I/O 2026 finden Sie unter io.google.
Weiterlesen
-
Neuigkeiten zum Produkt
Auf der Google I/O 2026 werden 17 wichtige Ankündigungen für Android-Entwickler gemacht, die sich auf agentengestützte Produktivität, Compose First als UI-Standard und leistungsstarke Medien sowie adaptive Entwicklung für das wachsende Ökosystem konzentrieren.
Matthew McCullough • Lesezeit: 8 Minuten
-
Neuigkeiten zum Produkt
Als Android-Entwickler haben Sie viele Möglichkeiten, wenn es um die Agenten, Tools, Befehlszeilen (CLI) und LLMs geht, die Sie für die App-Entwicklung verwenden.
Simona Milanovic, Ben Trengrove • Lesezeit: 5 Minuten
-
Neuigkeiten zum Produkt
Android Performance Analyzer (APA) ist das neue Profiler- und Leistungsanalysetool von Android für das Android-Mobilökosystem. APA ist als Profilerstellungstool für alle Entwickler gedacht, die für Android entwickeln und die Leistung ihrer App oder ihres Spiels verbessern möchten.
Mayank Jain • Lesezeit: 5 Minuten
Auf dem Laufenden bleiben
Lassen Sie sich Woche für Woche die neuesten Informationen zur Android-Entwicklung zusenden.