Jetpack XR için ARCore
| Son Güncelleme | Kararlı Sürüm | Sürüm Adayı | Beta Sürümü | Alfa Sürümü |
|---|---|---|---|---|
| 25 Mart 2026 | - | - | - | 1.0.0-alpha12 |
Bağımlılıkları bildirme
Jetpack XR için ARCore'a bağımlılık eklemek istiyorsanız Google Maven deposunu projenize eklemeniz gerekir. Daha fazla bilgi için Google'ın Maven deposunu inceleyin.
Uygulamanız veya modülünüz için build.gradle dosyasına ihtiyacınız olan yapılarla ilgili bağımlılıkları ekleyin:
Eski
dependencies { implementation "androidx.xr.arcore:arcore:1.0.0-alpha12" // Optional dependencies for asynchronous conversions implementation "androidx.xr.arcore:arcore-guava:1.0.0-alpha12" implementation "androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha12" }
Kotlin
dependencies { implementation("androidx.xr.arcore:arcore:1.0.0-alpha12") // Optional dependencies for asynchronous conversions implementation("androidx.xr.arcore:arcore-guava:1.0.0-alpha12") implementation("androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha12") }
Bağımlılıklar hakkında daha fazla bilgi için Derleme bağımlılıkları ekleme başlıklı makaleyi inceleyin.
Geri bildirim
Geri bildiriminiz Jetpack'in iyileştirilmesine yardımcı olur. Yeni sorunlar keşfederseniz veya bu kitaplığı iyileştirmeye yönelik fikirleriniz varsa lütfen bize bildirin. Yeni bir sorun oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir soruna oyunuzu ekleyebilirsiniz.
Daha fazla bilgi için Sorun İzleyici belgelerini inceleyin.
Sürüm 1.0
Sürüm 1.0.0-alpha12
25 Mart 2026
androidx.xr.arcore:arcore-*:1.0.0-alpha12 iptal edilir. 1.0.0-alpha12 sürümü bu commit'leri içerir.
API Değişiklikleri
Config.augmentedObjectCategories, Liste'den Küme'ye değiştirildi. (I25a64, b/487376359)androidx.xr.arcore.Eyeveandroidx.xr.arcore.Handtürleri. (I42438, b/449032900)- Kaynak kapsamı belirleme için Android bağlamının iletilmesine olanak tanıyan
Session.createaşırı yüklemesi eklendi. (I7d3fe, b/415805990, b/477386334) FakeRuntimeAnchor.ANCHOR_RESOURCE_LIMIT,FakeRuntimeAnchor.anchorResourceLimitolarak değiştirildi. (I90841, b/431992235)TiltGestureAPI'nin deneysel olarak işaretlenmesi. Bu API gelecekte değiştirilebilir veya kaldırılabilir. Bu API'yi kullanmak için@ExperimentalGesturesApi(Ic9858) özelliğini etkinleştirin.- Yapılandırma'da (I1f6e4, b/480220930)
AugmentedObjectizleme için kategoriler ayarlama özelliği eklendi.
Hata Düzeltmeleri
- META-INF/services/ dosyasını
PerceptionRuntimeFactorykonumunun gerçek konumuyla güncelleyerek Chrome'un derlemesi düzeltildi. (I7a801, b/481288291)
Sürüm 1.0.0-alpha11
25 Şubat 2026
androidx.xr.arcore:arcore-*:1.0.0-alpha11 iptal edilir. 1.0.0-alpha11 sürümü bu commit'leri içerir.
Sürüm 1.0.0-alpha10
28 Ocak 2026
androidx.xr.arcore:arcore-*:1.0.0-alpha10 iptal edilir. 1.0.0-alpha10 sürümü bu commit'leri içerir.
Yeni Özellikler
TiltGestureAPI'si kullanıma sunuldu. Bu API, geçiş ilerleme durumuyla birlikte cihazın eğim (YUKARI/AŞAĞI) durumunun kararlı bir şekilde algılanması için reaktif birFlowsağlar. (Ic269f, b/448152779)- Jetpack XR için ARCore artık XR çalışma zamanı kaydı mekanizmasını kullanıyor. Daha fazla bilgi için
androidx.xr.runtime.Logsayfasına göz atın. (l52735, b/448697662)
API Değişiklikleri
Geospatial.createPoseFromGeospatialPoseartık OpenXR özellikli cihazlarda çalışıyor. (l362c6)
Sürüm 1.0.0-alpha09
3 Aralık 2025
androidx.xr.arcore:arcore-*:1.0.0-alpha09 iptal edilir. 1.0.0-alpha09 sürümü bu commit'leri içerir.
Sürüm 1.0.0-alpha08
19 Kasım 2025
androidx.xr.arcore:arcore-*:1.0.0-alpha08 iptal edilir. 1.0.0-alpha08 sürümü bu commit'leri içerir.
Yeni Özellikler
ARCorefor Jetpack XR artık AR için Google Play Hizmetleri'nin kullanılabildiği cihazları destekliyor.- VPS kullanılabilirliği ve duruş dönüştürme için Geospatial API'ler eklendi (I144dc).
Sürüm 1.0.0-alpha07
22 Ekim 2025
androidx.xr.arcore:arcore-*:1.0.0-alpha07 iptal edilir. 1.0.0-alpha07 sürümü bu commit'leri içerir.
Hata Düzeltmeleri
:xr:arcore:arcore-openxr,:xr:arcore:arcore'ye uygulama bağımlılığı olarak eklendi (I47315, b/446999229)
Sürüm 1.0.0-alpha06
24 Eylül 2025
androidx.xr.arcore:arcore-*:1.0.0-alpha06 iptal edilir. 1.0.0-alpha06 sürümü bu commit'leri içerir.
API Değişiklikleri
ARCoreiçin test desteğixr:arcore:arcore-testingmodülüne taşındı. (I25469)- Uygulamaların, oluşturma amacıyla cihazın duruşunu ve ekran yapılandırmasını almasına izin vermek için
ArDeviceveRenderViewpointeklendi. (Ib7e3f) HandJointTypesabitleriniHAND_JOINT_TYPE_önekiyle yeniden adlandırın. (I3f7cd)HandJointType,xr:runtime:runtimekuruluş birimindenxr:arcore:arcorekuruluş birimine taşındı. (Iadb9c, b/409058039)Hand.Stateartık performansa yönelik uygulamalara kolay erişim sağlayan bir biçimde ortak pozları içeren birjava.nio.FloatBuffersunuyor. (I55e27)
Sürüm 1.0.0-alpha05
30 Temmuz 2025
androidx.xr.arcore:arcore:1.0.0-alpha05, androidx.xr.arcore:arcore-guava:1.0.0-alpha05 ve androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha05 özellikleri kullanıma sunulur. 1.0.0-alpha05 sürümü bu commit'leri içerir.
Yeni Özellikler
- Geliştiricinin el tarafı bilgilerini (I270bd) alabilmesi için
getPrimaryHandSideekleyin. - Jeo-uzaysal kontrol VPS kullanılabilirlik API'si ekleyin (I58573)
checkVpsAvailabilityiçin ARCore API'sini ekleyin (Idbded)- Java geliştiricilerin kullanabilmesi için
stateFlowableuzantı işlevleri:xr:arcore:arcore-rxjava3'e eklendi. (I083aa, b/427247794)
API Değişiklikleri
- Yapılandırma
*Modedeğerleri, davranışlarını yansıtacak şekilde yeniden adlandırıldı. (I6d247, b/414648065) - Ana ARCore yapısı (xr:arcore:arcore) yalnızca Kotlin tarzı eş zamansız API'ler içerecektir. Java geliştiriciler, uyumlu API'lere erişmek için
xr:arcore:arcore-rxjava3kitaplığını kullanabilir. (Ia525e, b/422794329) - Ana ARCore yapısı (
xr:scenecore:scenecore) yalnızca Kotlin tarzı eş zamansız API'ler içerir. Java geliştiriciler, uyumlu API'lere erişmek içinxr:arcore:arcore-guavakitaplığını kullanabilir. (Iffcb4, b/422773524) - Java geliştiricilerin kullanımı için
Anchor.persistAsync(),AnchorGuava'ye eklendi. (I4af1c, b/425984631) - Java geliştiricilerin kullanımı için
Earth.createAnchorOnSurfaceAsync(Session, Double, Double, Double, Quaternion, Surface),EarthGuava'ye eklendi. (I66357, b/425992992) - Java geliştiriciler,
GltfModel.ktiçindeGltfModel.createAsynciçin uzantı işlevlerini kullanır.GltfModel'daki asenkron işlevler silinecek. (I0af60) - Bu kitaplık artık tür kullanımı olan JSpecify nullness ek açıklamalarını kullanıyor. Kotlin geliştiricileri, doğru kullanımı zorunlu kılmak için şu derleyici bağımsız değişkenini kullanmalıdır:
-Xjspecify-annotations=strict(Bu, Kotlin derleyicisinin 2.1.0 sürümünden itibaren varsayılan değerdir) (Ia8420, b/326456246) - Java geliştiricilerin kullanabilmesi için
subscribeAsFlowableuzantı işlevleri:xr:arcore:arcore-rxjava3'e eklendi. (Id3e49, b/427277298)
Sürüm 1.0.0-alpha04
7 Mayıs 2025
androidx.xr.arcore:arcore:1.0.0-alpha04 iptal edilir. 1.0.0-alpha04 sürümü bu commit'leri içerir.
API Değişiklikleri
- Kotlin 2.0 ile yayınlanan projelerin kullanılabilmesi için KGP 2.0.0 veya daha yeni bir sürüm gerekir. (Idb6b5)
TrackingStateveHandJointType, ARCore'dan Runtime'a taşındı.Hand.State.isActive (boolean),Hand.State.trackingState (androidx.xr.runtime.TrackingState)olarak değiştirildi.- UUID geçersizse
Anchor.load,Anchor.AnchorLoadInvalidUuiddeğerini döndürür.
Sürüm 1.0.0-alpha03
26 Şubat 2025
androidx.xr.arcore:arcore:1.0.0-alpha03, son alfa sürümünden bu yana önemli bir değişiklik yapılmadan yayınlandı. 1.0.0-alpha03 sürümü bu commit'leri içerir.
Sürüm 1.0.0-alpha02
12 Şubat 2025
androidx.xr.arcore:arcore:1.0.0-alpha02 iptal edilir. 1.0.0-alpha02 sürümü bu commit'leri içerir.
Yeni Özellikler
- El takibi desteği eklendi. İzleme bilgilerine erişmek için
Hand.leftveHand.rightöğelerini kullanın. - Çapa oluşturan API'ler (
Anchor.create,Anchor.load,Plane.createAnchor) artıkAnchorCreateResultdöndürüyor veAnchorCreateResourcesExhausted'yi düzgün şekilde uyguluyor.
Hata düzeltmeleri
Anchor.detach, oturum güncelleme iş parçacığıyla yarış durumu nedeniyle artık kritik bir kilitlenmeye neden olmuyor.Anchor.create, emülatörde çalışırken daha kararlıdır
Sürüm 1.0.0-alpha01
12 Aralık 2024
androidx.xr.arcore:arcore-* 1.0.0-alpha01 iptal edilir.
İlk sürümdeki özellikler
Mevcut ARCore kitaplığından ilham alan Jetpack XR için ARCore kitaplığı, dijital içeriği gerçek dünyayla harmanlama özellikleri sunar. Bu kitaplıkta hareket izleme, kalıcı bağlantılar, isabet testi ve semantik etiketlemeyle (ör. zemin, duvarlar ve masa üstleri) düzlem tanımlama yer alır. Jetpack XR için ARCore ile çalışma hakkında daha fazla bilgi edinmek üzere geliştirici kılavuzunu inceleyin.
Session: Jetpack XR için ARCore, işlevselliğini sağlamak için Jetpack XR Çalışma Zamanı'nı kullanır. Jetpack XR için ARCore'un çoğu API'siyle etkileşim kurmak için Oturum kullanacağınızdan lütfen dokümanlarına göz atın.Plane: Çevrenizdeki dünyayı anlamak için düzlemleri kullanın. Her düzlem, semantik olarak kendisini tanımlayan birLabeliçerir. En son tespit edilen uçaklarla ilgili bildirim almak içinsubscribe, belirli bir uçakta yapılan değişikliklerle ilgili bildirim almak içinstatesimgesini kullanabilirsiniz.Anchor: Sanal bir nesne ile gerçek dünyadaki bir konum arasındaki bağlantı. Sabitler, uzayda belirli bir konuma (createkullanılarak) veya birTrackable'a (createAnchorkullanılarak) eklenebilir.Bağlantılar oturumlar arasında yeniden kullanılabilir. Bunları depolamak için
persist, numaralandırmak içingetPersistedAnchorUuidsve almak içinloadkullanabilirsiniz. Kullanılmadıklarındaunpersistolduğundan emin olun.Sabitleyiciler, Jetpack XR için ARCore ile Jetpack SceneCore arasında birlikte çalışabilir. Sabit nokta kullanarak
AnchorEntityoluşturabilir veya mevcut bir AnchorEntity'niz varsagetAnchorkullanarak destekleyici sabit noktasını alabilirsiniz.hitTestkullanarak doğal kullanıcı etkileşimleri sunun. Bir hitTest, hangi içeriklerle kesiştiğini belirlemek ve bu konumdan birAnchoroluşturmak içinRaykullanır.InputEventöğesinden hitTest yapmayı düşünün.
Bilinen Sorunlar
unpersistçağrısı yapılmasıyla UUID'siningetPersistedAnchorUuidstarafından döndürülen sonuçlardan kaldırılması arasında gecikme olabilir.create, sistemin yeni bağlantılar döndürmek için yeterli kaynağa sahip olduğunu doğrulamayacaktır. Aşırı sayıda bağlantı oluşturmak kilitlenmeye neden olabilir.Daha önce kalıcı hale getirilmiş ve kalıcı hale getirilmemiş bir sabitleme noktasını kalıcı hale getirme şu anda desteklenmemektedir.
Emülatörde kullanım desteklenir ancak davranış, gerçek bir cihazda çalıştırıldığında olduğu kadar kararlı olmayabilir. Özellikle
createçağrıları, yerel kod hatasıyla başarısız olabilir ve etkinliği hemen sonlandırabilir.Bazı durumlarda,
persistişlevi "Anchor was not persisted" (Sabitleme kalıcı hale getirilmedi) mesajıyla çağrıldığında yanlışlıklaRuntimeExceptionistisnası oluşturulabilir. Bu durumlarda işlev yine de başarılı olur ve sabitleme kalıcı hale getirilir. Geçici çözüm olarakpersistçağrısınıtrybloğuyla sarmalamanızı öneririz.