Ürün Haberleri

Android XR SDK'sında güncellemeler: Geliştirici Önizlemesi 4 ile tanışın

Okuma süresi: 5 dakika

Bugün, Android XR SDK'nın geliştirici önizlemesi 4'ü kullanıma sunmanın heyecanını yaşıyoruz. Bu sürümde, kulaklıklar, kablolu XR gözlükleri ve akıllı gözlükler için cihazlar arası geliştirme sürecini birleştirme konusuna odaklanmaya devam ediyoruz. Platformumuzun sezgisel olmaya devam etmesi için form faktörlerimizde daha açıklayıcı adlandırma yöntemini benimsiyoruz. Bu kapsamda, yapay zeka destekli akıllı gözlükler artık ses gözlükleri, ekranlı yapay zeka destekli akıllı gözlükler ise ekranlı gözlükler olarak adlandırılacak. Bu değişiklikler, bugünden itibaren dokümanlarımızda yer alacak.

Bu sürüm, XR cihazlar için inanılmaz deneyimler oluşturmanıza, XR kulaklıklarında daha derin sürükleyici deneyimler sunmanıza ve sesli ve ekranlı gözlüklerde artırılmış gerçeklik deneyimleri oluşturma sürecini kolaylaştırmanıza yardımcı olacak güncellemelerle doludur.Ayrıca, XR Runtime, Jetpack SceneCore ve Jetpack XR için ARCore gibi temel kitaplıklarımız da yakında resmi olarak Beta sürümüne geçecek.

Ekranlı ve sesli gözlükler ile XREAL'ın Project Aura'sı gibi yeni cihazlarda sürükleyici ve artırılmış deneyimler oluşturmak için donanımlara ve kaynaklara erken erişim imkanı sunan Android XR Developer Catalyst Programı'nı duyuruyoruz. Daha fazla bilgi edinin ve başvurunuzu bugün yapın

Ses ve ekran gözlükleri için artırılmış gerçeklik deneyimleri oluşturma

Artırılmış deneyimler için kitaplıklarımızla başlayarak, Geliştirici Önizlemesi 4'te uygulamalarınızı oluşturup test etmenize yardımcı olacak yeni API'ler sunuluyor.

Jetpack Projected: Cihaz Kullanılabilirliği ve ProjectedTestRule API'leri

Jetpack Projected kitaplığı, uygulama deneyimlerini telefondan kullanıcının görüş alanına taşımaya yardımcı olur. Giyilebilir durumunu ve bağlantı sinyallerini standart Android Lifecycle.State değerlerinde birleştiren Cihaz Kullanılabilirliği API'sini ekledik. Bu sayede, cihazın takılı olup olmamasına göre uygulamalarınızın davranışını ayarlayabilirsiniz.

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 */ }
        }
    }

Testi basitleştirmek için, öngörülen test yapay nesnesindeki yeni ProjectedTestRule API, öngörülen test ortamlarının kurulumunu otomatikleştirir. Bu sayede, ortak metin kodu olmadan kolayca anlaşılan ve güvenilir birim testleri yazabilirsiniz.

// 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 ve yeni bileşenler

Ekranlı gözlükler için kullanıcı arayüzü kitaplığımız olan Jetpack Compose Glimmer'da artık optik şeffaf ekranlarda daha iyi okunabilirlik için Google Sans Flex yer alıyor. Ayrıca çeşitli etkileşimli bileşenler de ekledik:

  • Gruplar: Dokunmatik yüzey için optimize edilmiş gruplar için tasarlanmıştır ve her seferinde bir öğe gösterir.
  • Başlık çipleri: İçerik kartları için kategorizasyon ve bağlam sağlar.
glimmer (1).gif

XR Kulaklıkları ve Kablolu XR Gözlükleri İçin Sürükleyici Deneyimler Oluşturma

XR kulaklıkları ve kablolu XR gözlükleri için tamamen sürükleyici deneyimler oluşturmak istiyorsanız birkaç önemli güncellememiz var.

Beta Geçişi ve Modern Mimari

XR Çalışma Zamanı, Jetpack SceneCore ve Jetpack XR algılama özelliklerine (Derinlik Haritaları, Göz/El Takibi, Hit Testing ve Uzamsal Sabitleyiciler) yönelik ARCore yakında beta sürümüne geçecek. Bu nedenle, Jetpack XR API'lerini kolaylaştırdık. Modern ve Kotlin öncelikli bir mimari için eski Guava ve RxJava3 paketlerini kaldırdık.

Jetpack SceneCore: glTF ve Özel Örgüler

3D modelleri ince ayarlama ve 3D modelle belirli düğümlere erişme özelliği ekleyerek 3D model özelliklerini genişletiyoruz. GltfModelNode kullanarak poz, materyaller ve dokular gibi özellikleri değiştirebilir, hatta belirli düğümler için animasyonlar çalıştırabilirsiniz.

// 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
)

Ayrıca SceneCore'a özel ağlar da ekliyoruz. Özel ağlar, özel 3D modeller oluşturmak için ideal olan geometrileri programatik olarak anında oluşturmanıza olanak tanır. Bu özellik deneysel olarak kullanıma sunulacak. Deneyip görüşlerinizi bizimle paylaşabilirsiniz.

// 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: Yerel glTF Desteği

Artık SpatialGltfModel ile XR için Oluştur'da doğrudan yerel glTF desteği sunuyoruz. glTF modelindeki düğümlere ve animasyonlara erişmek için SpatiallGltfModelState ile birlikte kullanın veya 3D modellerinize doku ve materyal eklemek için kullanın.

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 için ARCore: Kablolu XR Gözlükler için Geospatial API Önizlemesi

Ayrıca, Jetpack XR için ARCore'da kablolu XR gözlükler için Geospatial API'nin erken önizlemesini de sunuyoruz. Bu güncelleme, 87'den fazla ülkede gerçek dünyadaki konumlarla ilişkili dijital içeriğin yüksek hassasiyetle sabitlenmesini sağlar.

ARCore'un Görsel Konumlandırma Sistemi'ni (VPS) Gemini Live API'nin akıl yürütme ve ses özellikleriyle birleştirerek, kullanıcınızın hem konumunu hem de pozisyonunu anlayan içeriğe duyarlı deneyimler oluşturabilirsiniz. Yakındaki yerlerin gerçek zamanlı sesli açıklamalarını sunan, yapay zeka destekli ve kullanıcıyı içine çeken bir rehberli yürüyüş turu oluşturduğunuzu düşünün. Bu turda dijital bilgiler fiziksel ortamla sorunsuz bir şekilde birleştiriliyor.

Geleceği inşa etmeye bugün başlayın

Android XR için geliştirme yapmak için harika bir dönem. Jetpack XR SDK'nın yakında Beta sürümüne geçmesi ve yeni araçlardan oluşan güçlü bir setin kullanıma sunulmasıyla birlikte, uygulamanızın deneyimlerini XR'a hazır hale getirmek için aşağıdaki alanların her birini keşfedin.  

Dokümanları okuyun, örnekleri inceleyin ve XR denemelerine göz atın.

Tam teknik kılavuzlar, API referansı ve yeni emülatörü ayarlama talimatları için resmi Android Geliştirici sitesini ziyaret edin. Örneklerimiz ve denemelerimizden ilham alın. Bu API'leri kullanarak nasıl etkileyici üç boyutlu yerleşimler oluşturduğumuzu, 3D modeller yüklediğimizi, üç boyutlu sesi keşfettiğimizi ve daha fazlasını öğrenin.

Oyun motorlarındaki yeniliklere göz atın

Unreal Engine ve Godot için resmi destek ekledik. Ayrıca, Unity ve Android XR Interaction Framework ile Android XR'de geliştirme sürecini hızlandıracak iki yeni araç kullanıma sunduk. Ayrıca, geri bildirimlerinize dayanarak deneyimlerinizi doğrudan tercih ettiğiniz motordan çalıştırmanıza olanak tanıyan Android XR Engine Hub'ı kullanıma sunuyoruz.

Android XR Developer Catalyst Programı'na başvurma

En yeni Android XR donanımı için geliştirme yapma fırsatını kaçırmayın. Ses ve ekran gözlüğü prototipimiz ile XREAL'in Project Aura'sı da dahil olmak üzere yayın öncesi donanımlara erişim fırsatı için bugün başvurun.

Daha fazla bilgi edinin ve hemen başvurun

Bu yılın ilerleyen günlerinde daha fazla Android XR cihazı kullanıma sunarken oluşturduğunuz muhteşem XR deneyimlerini görmeyi heyecanla bekliyoruz.

Bu duyuruyu ve Google I/O 2026'daki tüm güncellemeleri io.google adresinde inceleyin.

Yazan:

Okumaya devam edin