XR Çalışma Zamanı
Son Güncelleme | Kararlı sürüm | Sürüm Adayı | Beta Sürümü | Alfa sürümü |
---|---|---|---|---|
30 Temmuz 2025 | - | - | - | 1.0.0-alpha05 |
Bağımlılıkları bildirme
XR çalışma zamanına bağımlılık eklemek için 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.runtime:runtime:1.0.0-alpha05" // Use in environments that do not support OpenXR testImplementation "androidx.xr.runtime:runtime-testing:1.0.0-alpha05" }
Kotlin
dependencies { implementation("androidx.xr.runtime:runtime:1.0.0-alpha05") // Use in environments that do not support OpenXR testImplementation("androidx.xr.runtime:runtime-testing:1.0.0-alpha05") }
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 olursa 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-alpha05
30 Temmuz 2025
androidx.xr.runtime:runtime-*:1.0.0-alpha05
iptal edilir. 1.0.0-alpha05 sürümü bu commit'leri içerir.
Yeni Özellikler
HandJointType
veTrackingState
öğelerini ekleyin. (I55880, b/334645808)- Yapılandırma uygulamasını herkese açık hale getirin. (I95860, b/334645808)
- Yeni
SessionCreateResult
veSessionConfigureResult
türleri kullanıma sunuldu. (Icb8cb, b/334645808) - Minimum ve maksimum köşe noktalarıyla tanımlanan, 3D uzayda eksenle hizalı bir sınırlayıcı kutuyu temsil eden yeni bir
BoundingBox
sınıfı ekleyin. (Ic68c5, b/423073468)
API Değişiklikleri
androidx.xr.scenecore.PixelDimensions
adlı öğe,androidx.xr.runtime.math.IntSize2d
olarak yeniden adlandırıldı ve taşındı.androidx.xr.scenecore.Dimensions
adlı öğe,androidx.xr.runtime.math.FloatSize3d
olarak yeniden adlandırıldı ve taşındı.androidx.xr.scenecore.PlaneType
,androidx.xr.scenecore.PlaneOrientation
olarak yeniden adlandırıldı.androidx.xr.scenecore.PlaneSemantic
,androidx.xr.scenecore.PlaneSemanticType
olarak yeniden adlandırıldı. (Ifd405, b/416456228)androidx.xr.runtime.FoV
sınıfı kaldırıldı. Bunun yerineandroidx.xr.runtime.FieldOfView
politikasını kullanın. (I9ae27)Session.create
için, oturumun bağlanacağı birLifecycleOwner
sağlayabilen ek bir aşırı yükleme eklendi. Kaynak sahipliği için yine de bir Etkinlik sağlanması gerektiğini veLifecycleOwner
öğesinin Etkinlik içinde kapsamlandırılması gerektiğini unutmayın. (I1690b)FakeRuntimeAnchor.anchorsCreated
,anchorsCreatedCount
olarak yeniden adlandırıldı (I96df9, b/424441218)- Yapılandırma
*Mode
değerleri, davranışlarını yansıtacak şekilde yeniden adlandırıldı. (I6d247, b/414648065) - Kotlin 2.0 ile yayınlanan projelerin kullanılabilmesi için KGP 2.0.0 veya daha yeni bir sürümün kullanılması gerekir (Idb6b5, b/344563182)
- Manifest dizeleriyle ilgili API'ler
:xr:runtime:runtime
konumundan:xr:runtime:runtime-manifest
konumuna taşındı. Paket adıandroidx.xr.runtime
ikenandroidx.xr.runtime.manifest
olarak değiştirildi. (I610ad, b/418800249) Session.resume()
,Session.pause()
veSession.destroy()
, API yüzeyinden kaldırıldı. Oturum artıkLifecycleOwner
değil. Oturumun yaşam döngüsü artıkSession.create()
içinde iletilen Etkinliğin yaşam döngüsüne bağlı olacak. (I28a03)- 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) - Ana çalışma zamanı yapısı (
:xr:runtime:runtime
) yalnızca Kotlin tarzı asenkron API'ler içerir. Java geliştiriciler, uyumlu API'lere erişmek için:xr:runtime:runtime-guava
kullanabilir. (I05d4a, b/426639315) - Ana çalışma zamanı yapıtı (
:xr:runtime:runtime
) yalnızca Kotlin tarzı eş zamansız API'ler içerecek. Java geliştiriciler, uyumlu API'lere erişmek içinxr:runtime:runtime-rxjava3
kitaplığını kullanabilir. (I64122, b/426639775) - Coroutines'i
:xr:runtime:runtime-guava
'ya, Flow'ları:xr:runtime:runtime-rxjava3
'ye taşıyın. (I60ae9) Session.create
veSession.configure
artıkSessionCreatePermissionsNotGranted
veyaSessionConfigurePermissionsNotGranted
değerini döndürmek yerine yeterli izin verilmediğindeSecurityException
değerini döndürüyor. (I7c488, b/430651879)
Sürüm 1.0.0-alpha04
7 Mayıs 2025
androidx.xr.runtime:runtime:1.0.0-alpha04
, androidx.xr.runtime:runtime-openxr:1.0.0-alpha04
ve androidx.xr.runtime:runtime-testing:1.0.0-alpha04
yayınlandı. 1.0.0-alpha04 sürümü bu commit'leri içerir.
Yeni Özellikler
- Oturum artık mevcut Android yaşam döngüsü paradigmalarıyla daha fazla birlikte çalışabilirlik için
androidx.lifecycle.LifecycleOwner
uyguluyor. - Android XR için manifest dizeleri burada belirtilir ve belgelenir.
- Sahne içeriği kullanıcının görüş alanının içine veya dışına taşındığında bunu izlemek için Spatial Visibility Callback (Mekansal Görünürlük Geri Çağırma) uzantısı yöntemleri eklendi.
JxrPlatformAdapter
(ve ilgili tüm sınıflar) için bir taslak sürüm eklendi.- Oturum,
SceneCore
içindeki oturum yerine hemSceneCore
hem de çalışma zamanında kullanılacak. ActivityPose.hitTest
eklendi. Bu sayede, sanal içeriklere karşıhitTest
kullanılabiliyor.- Derleme zamanında birden fazla çalışma zamanı uygulaması belirtme özelliği artık destekleniyor. Yürütme sırasında, mevcut cihazın özelliklerine göre yalnızca biri yüklenir.
- Yeni bileşen türü
SpatialPointerComponent
eklendi. Bu tür, müşterilerin işaretçi için oluşturulan simgeyi belirtmesine veya simgeyi devre dışı bırakmasına olanak tanır. Bu Bileşen şu anda yalnızcaPanelEntity
örneğe eklenebilir.
API Değişiklikleri
- Yapılandırma uygulamasını herkese açık hale getirin. (I95860)
HandJointType
veTrackingState
öğelerini ekleyin. (I55880)- Kotlin 2.0 ile yayınlanan projelerin kullanılabilmesi için KGP 2.0.0 veya daha yeni bir sürüm gerekir (Idb6b5).
Hand.isActive (boolean)
,Hand.trackingState
olarak değiştirildi.OpenXR
uygulaması buna göre değiştirildi.Session.configure
içindekiandroid.permission.SCENE_UNDERSTANDING
izni şartıandroid.permission.SCENE_UNDERSTANDING_COARSE
olarak değiştirildi.LifecycleManager.configure
uygulanır ve artık yapılandırılabilir her çalışma zamanı özelliği için bir özellik içerenConfig
nesnesinde iletilir.- Kullanılabilir çalışma zamanı özelliklerini yapılandırmak için artık
Session.configure
,Config
ile çağrılabilir. Session.create
artıkCoroutineDispatcher
yerineCoroutineContext
iletmeyi destekliyor.Session.create
, Jetpack XR ve/veyaSceneCore
içinARCore
yüklemeyi destekler. En az biri sağlanmalıdır (test sürümleri mevcuttur).FakePerceptionManager
,Anchor.load
veAnchor.unpersist
'e geçersiz bir UUID iletildiğindeAnchorInvalidUuidException
oluşturur.CoreState
artık bir veri sınıfı değil.
Hata Düzeltmeleri
- Çalışma zamanı ProGuard yapılandırmaları düzeltildi.
Sürüm 1.0.0-alpha03
26 Şubat 2025
androidx.xr.runtime:runtime:1.0.0-alpha03
, androidx.xr.runtime:runtime-openxr:1.0.0-alpha03
ve androidx.xr.runtime:runtime-testing:1.0.0-alpha03
, son alfa sürümünden bu yana önemli bir değişiklik yapılmadan yayınlandı. Sürüm 1.0.0-alpha03, bu commit'leri içerir.
Sürüm 1.0.0-alpha02
12 Şubat 2025
androidx.xr.runtime:runtime:1.0.0-alpha02
, androidx.xr.runtime:runtime-openxr:1.0.0-alpha02
ve androidx.xr.runtime:runtime-testing:1.0.0-alpha02
yayınlandı. 1.0.0-alpha02 sürümü bu commit'leri içerir.
Kırılma ve davranış değişiklikleri
- Artık
OpenXR
çalışma zamanı işlevleri,OpenXR
kaynak sınırına ulaşıldığını bildiren bir hata koduyla karşılaştıklarında Anchor döndürmek yerineAnchorResourcesExhaustedException
hata mesajını veriyor. Session.create
veSession.resume
için artıkandroid.permission.HAND_TRACKING
izni gerekiyor.
Yeni özellikler
- El takibi desteği eklendi.
Hata düzeltmeleri
- Çapa oluşturma, emülatörde çalıştırıldığında daha kararlıdır.
Sürüm 1.0.0-alpha01
12 Aralık 2024
androidx.xr.runtime:runtime-* 1.0.0-alpha01
iptal edilir.
İlk sürümdeki özellikler
Jetpack XR Runtime'ın ilk sürümü. Bu kitaplık, Jetpack XR kitaplık paketinin temel işlevlerini içerir. Özellik keşfi, yaşam döngüsü yönetimi ve yapılandırma gibi işlemler buna dahildir. Çalışma zamanı kitaplığı, yürütme platformuna bağlı olarak farklı varyasyonlar (ör. runtime-openxr
veya runtime-testing
) sağlar. Ayrıca bu kitaplık, Jetpack XR API yüzeyinin tamamında kullanılan Vector3
ve Matrix4
gibi temel matematiksel soyutlamalar sunar.
Session
: İşlemin ne zaman yürütüleceğine ve genel yapılandırmaya karar verme dahil olmak üzere XR sistemi üzerinde ayrıntılı kontroller sağlar. Bu, temel sistem özelliklerinin kilidini açmak için diğer tüm API'lerde kullanacağınız tanıtıcıdır.Pose
: Rastgele bir koordinat sisteminde, konum ve yönlendirme ile ilişkili bir yer. Bu sınıfı, Jetpack XR ve Jetpack SceneCore için ARCore ile nesnelerin konumunu iletmek üzere kullanırsınız.
Bilinen Sorunlar
configure
şu anda işlem yapmamaktadır. Gelecekteki sürümlerde,Session
davranışını kontrol etmek için kullanabileceğiniz yeni ayarlar eklenecektir.