Jetpack XR için ARCore
| Son Güncelleme | Kararlı Sürüm | Sürüm Adayı | Beta sürümü | Alfa Sürümü |
|---|---|---|---|---|
| 17 Haziran 2026 | - | - | - | 1.0.0-alpha15 |
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 okuyun.
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-alpha15" }
Kotlin
dependencies { implementation("androidx.xr.arcore:arcore:1.0.0-alpha15") }
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-alpha15
17 Haziran 2026
androidx.xr.arcore:arcore-*:1.0.0-alpha15 iptal edilir. 1.0.0-alpha15 sürümü bu commit'leri içerir.
API Değişiklikleri
HitResult.createAnchorkaldırıldı. Geliştiriciler, sonuç izlenebilir öğesi birAnchorableiseHitResultöğesini temsil eden bir bağlantı oluşturabilir. Bunun içinAnchorableöğesinincreateAnchorişlevine isabet konumunu sağlamaları gerekir. (Ia851e)AnchorUnsupportedObjectkaldırıldı. Artık bir JXR ARCore çalışma zamanı tarafından atılmıyor. (Ia851e)androidx.xr.arcore.Anchorveandroidx.xr.arcore.ArDeviceartıkandroidx.xr.arcore.Trackable'yi uyguluyor. (I57b65)Depth.left,Depth.rightveDepth.monoartık boş değer olamaz (I1fc5e)Face.getUserFaceartık boş değer içermez (I0eac1)RenderViewpoint.left,RenderViewpoint.right,RenderViewpoint.monoartık boş değer içermez (Icf7fa)Hand.leftveHand.rightnull değer içermez (Icef37)QrCodeAPI'si eklendi (Ia0bbe)
Sürüm 1.0.0-alpha14
19 Mayıs 2026
androidx.xr.arcore:arcore-*:1.0.0-alpha14 iptal edilir. 1.0.0-alpha14 sürümü bu commit'leri içerir.
API Değişiklikleri
GeospatialMode.VPS_AND_GPSdesteği sonlandırıldı ve yalnızca IMU ile GPS kullanan yeni ve daha düşük güç tüketen bir izleme modu olanGeospatialMode.INERTIALkullanıma sunuldu.GeospatialMode.SPATIAL(I1e6cd)- Özel bağlantı istisnası sınıfları:
AnchorInvalidUuidException,AnchorNotAuthorizedException,AnchorUnsupportedLocationException,AnchorRuntimeFailureExceptionveAnchorUnsupportedObjectExceptionartıkRuntimeExceptionörnekleridir ve kontrol edilmek üzere tasarlanmamıştır. (I9356e) TestArDevice,TestAugmentableObject,TestDepthMap,TestEye,TestFace,TestGeospatial,TestHand,TestPlane,TestRenderViewpointveTestTrackabledahil olmak üzereArCoreTestRuleAPI'si eklendi (I0ad3c)AnchorLoadInvalidUuid,AnchorCreateUnsupportedObject,AnchorCreateUnsupportedLocationveAnchorCreateNotAuthorizedöğelerini kaldırır. Bu hataların tümü artık çalışma zamanında istisna olarak değerlendiriliyor.AnchorCreateIllegalStateöğesini kaldırır. Çoğu durumda bu değerin yeriniAnchorCreateTrackingUnavailablealmıştır.AnchorExceptionve türetilmiş sınıflarAnchorInvalidUuidException,AnchorNotAuthorizedException,AnchorUnsupportedLocationException,AnchorRuntimeFailureExceptionveAnchorUnsupportedObjectExceptioneklenir. (I4c4dd)
Harici Katkı (External Contribution)
- Özel işaretçi izleme için
AugmentedImageAPI'si eklendi (I0cf09).
Sürüm 1.0.0-alpha13
6 Mayıs 2026
androidx.xr.arcore:arcore-*:1.0.0-alpha13 iptal edilir. 1.0.0-alpha13 sürümü bu commit'leri içerir.
API Değişiklikleri
TrackingStateveVpsAvailabilityResult,androidx.xr.arcore package'a taşındı.androidx.xr.runtime'daki türler artık kullanımdan kaldırıldı. (Ic7930, b/480462213)Plane.Type,PlaneTypeolarak yeniden adlandırıldı. (I8c90c, b/482675376)Hand.HandSide,HandSideolarak yeniden adlandırıldı. (Ica562, b/482675376)Plane.Label,PlaneLabelolarak yeniden adlandırıldı. (Ic6b67, b/482675376)Geospatial.Surface,GeospatialSurfaceolarak yeniden adlandırıldı. (I1a8be, b/482675376)Geospatial.State,GeospatialStateolarak yeniden adlandırıldı. (I203fa, b/482675376)NativeDataAPI'sixr:runtime:runtimekitaplığına taşındı. (I87954, b/494251500)Session.createveSession.configureartık kapsamlı değildir ve when ifadelerinde else ifadeleri gerektirir. (I9885e, b/495805998, b/495805998)androidx.xr.runtime.FieldOfViewdesteği sonlandırıldı. Bunun yerineandroidx.xr.runtime.math.FieldOfViewkullanın. (Ia01a0, b/480233045)- Orbiter'ın konum, uzaklık, uzaklık türü, hizalama ve yükseklik yerine
OrbiterAnchorPoint + VolumeOffsetveyaOrbiterPoseProviderkullanması sağlandı.shouldRenderInNonSpatialparametresi de kaldırıldı. Geliştirici, orbiter'ın uzamsal olmayan şekilde oluşturulmasını istemiyorsa orbiter'ı bir if ifadesine sarmalı veSpatialCapabilitiesdeğerini kontrol etmelidir. (I9fbb3, b/462428503) - Taşınabilir değiştiriciler eklendi. Bu değiştiriciler şu anda
SpatialPanelsveSpatialExternalSurfaceiçin iyi çalışmaktadır. Çok yakındaSpatialGltfModelsiçin de desteklenecek. Ancak bu özelliklerin tümSubspaceComposablesiçin iyi bir şekilde desteklenmesi amaçlanmaktadır. (I9a3cd, b/479530787, b/478935063, b/478935063) - Geliştiricilerin,
ArDevice.stateizleme akışınıState.trackingStategözlemlemesi ve izleme doğruluğuna göre uygulamalarının oluşturma veya uyarılarını buna göre ayarlaması beklenir. (Ic00f0, b/445466590) HandJointTypeenum değerleri yeniden adlandırıldı. (Ifbc83, b/482670596)FaceConfidenceRegionsabitleri yeniden adlandırıldı. (Ia62d5, b/482670596)FaceBlendShapeTypesabitleri yeniden adlandırıldı. (I33b8b, b/482670596)CreatePoseFromGeospatialPoseErrorInternalveCreateGeospatialPoseFromPoseErrorInternaleklendi. (I4bcf1, b/482666615)DeviceTrackingMode.LAST_KNOWN,SPATIAL_LAST_KNOWNolarak yeniden adlandırıldı (kullanımdan kaldırılmış bir geri dönüşle), 3DoF izleme içinINERTIAL_LAST_KNOWNeklendi veTRACKING_DEGRADED,TrackingState'ye eklendi. (Ie661c, b/445466590)GroupEntitydesteği sonlandırıldı. Yalnızca temel Entity işlevine sahip bir Entity oluşturmak içinEntity.createişlevini çağırın. Bu işlev, bir Entity arayüzü döndürür. (I4c450, b/473867483)XrLogAPI'si eklendi. JetpackXR'de günlük kaydını etkinleştirmek içinXrLog.isEnableddeğerinitrueolarak ayarlayın ve günlük düzeyini ayarlamak içinXrLog.Leveldeğerini kullanın. (I76a1f, b/463460895, b/487378441)
Hata Düzeltmeleri
- Açık XR cihazlarına cihaz izleme durumu desteği eklendi. (I91485, b/445466590)
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ı için Android bağlamının iletilmesine izin vermek üzere
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ı
PerceptionRuntimeFactorykonumunu kullanarak 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 sunuluyor. 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:arcoreiçin 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) HandJointTypenumaralandırmalarınıHAND_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 yayınlandı. 1.0.0-alpha05 sürümü bu commit'leri içerir.
Yeni Özellikler
- Geliştiricinin el tarafı bilgilerini (I270bd) alabilmesi için
getPrimaryHandSideekleyin. - Coğrafi alan kontrolü VPS kullanılabilirliği API'si ekleyin (I58573)
checkVpsAvailability(Idbded) için ARCore API'yi ekleyin- 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çerecektir. Java geliştiriciler, uyumlu API'lere erişmek içinxr:arcore:arcore-guavakitaplığını kullanabilir. (Iffcb4, b/422773524) - Java geliştiricilerin kullanması için
Anchor.persistAsync(),AnchorGuava'ye eklendi. (I4af1c, b/425984631) - Java geliştiricilerin kullanması 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 etiketleme (ör. zemin, duvarlar ve masa üstleri) ile 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 desteklemek üzere Jetpack XR Çalışma Zamanı'nı kullanır. Jetpack XR için ARCore API'lerinin çoğuyla 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 onu tanımlayan birLabelöğesine sahiptir. En son tespit edilen uçaklarla ilgili bildirim almak içinsubscribe, belirli bir uçakta yapılan değişikliklerle ilgili bildirim almak için isestatesimgesini kullanabilirsiniz.Anchor: Sanal bir nesne ile gerçek dünyadaki bir konum arasındaki bağlantı. Sabitleyiciler,createkullanılarak uzayda belirli bir konuma veyaTrackablekullanılarakcreateAnchor'a 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 olarakpersistişlevine yapılan çağrıyıtrybloğuyla sarmalamanızı öneririz.