XR Çalışma Zamanı

Yerel çalışma zamanımızla özel AR veya 3D oturumunuzu başlatın.
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

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-alpha15"

    // Use in environments that do not support OpenXR
    testImplementation "androidx.xr.runtime:runtime-testing:1.0.0-alpha15"
}

Kotlin

dependencies {
    implementation("androidx.xr.runtime:runtime:1.0.0-alpha15")

    // Use in environments that do not support OpenXR
    testImplementation("androidx.xr.runtime:runtime-testing: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.

Yeni sorun oluşturma

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.runtime:runtime-*:1.0.0-alpha15 iptal edilir. 1.0.0-alpha15 sürümü bu commit'leri içerir.

API Değişiklikleri

  • isProjectedServiceAvailable() için test API'si eklendi (I44ba1)
  • DeviceTrackingMode.INERTIAL, yeni @ExperimentalInertialTrackingApi notu altında herkese açık deneysel bir API olarak kullanıma sunuldu. (Ic3df3)
  • Config.Builder eklendi. Uygulamalar, oluşturucu nesnesinde ayarlayıcı işlevlerini çağırıp ardından Builder.build işlevini çağırarak özel yapılandırmalar oluşturabilir. (I13142)
  • androidx.xr.runtime.FieldOfView kaldırıldı. Uygulamalar bunun yerine androidx.xr.runtime.math.FieldOfView kullanmalıdır. (I621ef)
  • Session.create artık @WorkerThread üzerinde çalıştırılmalıdır. (I2169e)
  • isProjectedServiceAvailable(), XrDevice listesine eklendi (I507e9)
  • DeviceTrackingMode.SPATIAL_LAST_KNOWN öğesini DeviceTrackingMode.SPATIAL, DeviceTrackingMode.INERTIAL_LAST_KNOWN öğesini ise DeviceTrackingMode.INERTIAL olarak yeniden adlandırma (I96f8b)
  • Vector3.angleBetween ve Vector4.angleBetween artık radyan yerine derece döndürüyor. (Ica8bc)
  • QrCode API'si eklendi (Ia0bbe)

Sürüm 1.0.0-alpha14

19 Mayıs 2026

androidx.xr.runtime:runtime-*: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_GPS desteği sonlandırıldı ve yalnızca IMU ile GPS kullanan yeni ve daha düşük güç tüketen bir izleme modu olan GeospatialMode.INERTIAL kullanıma sunuldu.GeospatialMode.SPATIAL (I1e6cd)
  • androidx.xr.runtime.FieldOfView üzerindeki desteği sonlandırılan özellik etiketini kaldırır. Bir sonraki sürümde kaldırılacak olan androidx.xr.runtime.FieldOfView için androidx.xr.runtime.math.FieldOfView öğesini tür takma adı yapar. İstemciler, androidx.xr.runtime sürümünü kullandıkları her yerde androidx.xr.runtime.math sürümüne geçmelidir. (I6ce15)
  • PreviewProjectedApi ek açıklaması eklendi (Ic49f6)
  • AugmentedObjectCategory.allSupported kaldırıldı (I08656)
  • El takibi, göz takibi, derinlik tahmini, coğrafi ve oluşturma için cihaz desteğini belirlemek üzere XrDevice'ya API'ler ekleme. (I00696)
  • Session.getNativeData, XrDevice.getNativeInstanceData ve Session.getNativeSessionData ile değiştirildi. (Ieb077)
  • DeviceTrackingMode.INERTIAL_LAST_KNOWN, @PreviewSpatialApi ile açıklama eklenmiş. (I99868)
  • Birim testlerinde kullanılmak üzere XrDeviceTestRule eklendi. (I87584)
  • CATEGORY_XR_PROJECTED_LAUNCHER eklenerek bu sabit, manifest dosyasında etkinliğin sistem tarafından başlatıcı olarak keşfedilmesi gerektiğini belirtmek için kullanılır. (Ia3069)

Harici Katkı (External Contribution)

  • AugmentedImageMode öğesini Config API'sine ekleyin (I0cf09)

Sürüm 1.0.0-alpha13

6 Mayıs 2026

androidx.xr.runtime:runtime-*:1.0.0-alpha13 iptal edilir. 1.0.0-alpha13 sürümü bu commit'leri içerir.

API Değişiklikleri

  • TrackingState ve VpsAvailabilityResult, androidx.xr.arcore package'a taşındı. androidx.xr.runtime'daki türler artık kullanımdan kaldırıldı. (Ic7930, b/480462213)
  • Session.getNativeData() artık xr:runtime:runtime modülü olarak tanımlanıyor ve OpenXR destekli çalışma zamanları için [nativeFunctionTablePointer] sağlıyor. (Ifa862)
  • NativeData API'si xr:runtime:runtime kitaplığına taşındı. (I87954, b/494251500)
  • Session.create ve Session.configure artık kapsamlı değildir ve when ifadelerinde else ifadeleri gerektirir. (I9885e, b/495805998, b/495805998)
  • androidx.xr.runtime.FieldOfView desteği sonlandırıldı. Bunun yerine androidx.xr.runtime.math.FieldOfView kullanın. (Ia01a0, b/480233045)
  • Matrix4.pose, Matrix4.toPose() olarak yeniden adlandırıldı. Poz özelliği artık kullanımdan kaldırıldı. (I329b4, b/493383490)
  • XrServiceAvailability API'si eklendi (If379e, b/493558010)
  • ExperimentalXrServiceAvailabilityApi açıklaması eklendi (Icab49, b/491069725)
  • @PreviewSpatialApi için son eki kaldırın (If5242, b/491939311)
  • DeviceTrackingMode.LAST_KNOWN, SPATIAL_LAST_KNOWN olarak yeniden adlandırıldı (kullanımdan kaldırılmış bir geri dönüşle), 3DoF izleme için INERTIAL_LAST_KNOWN eklendi ve TRACKING_DEGRADED, TrackingState'ye eklendi. (Ie661c, b/445466590)
  • XrLog API'si eklendi. JetpackXR'da günlük kaydını etkinleştirmek için XrLog.isEnabled değerini true olarak ayarlayın ve günlük düzeyini ayarlamak için [XrLog.Level] kullanın. (I76a1f, b/463460895, b/487378441)
  • DISPLAY_CATEGORY_XR_PROJECTED eklenmesiyle birlikte bu sabit, etkinliğin XR projeksiyonlu ekran için tasarlandığını (I26d8b) belirtmek üzere manifest dosyasında kullanılır.

Sürüm 1.0.0-alpha12

25 Mart 2026

androidx.xr.runtime:runtime-*: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)
  • Session.create öğesinden unscaledGravityAlignedActivitySpace işareti kaldırıldı. ActivitySpace artık her zaman ölçeklendirilmemiş ve yer çekimiyle hizalanmış durumda. (If6f11, b/458173423)
  • Kaynak kapsamı için Android bağlamının iletilmesine izin vermek üzere Session.create aşırı yüklemesi eklendi. (I7d3fe, b/415805990, b/477386334)
  • JvmOverloads, FloatSize2d.to3d, Matrix3.copy ve Matrix4.copy'ye eklendi (I69586, b/481371562)
  • Yapılandırma'da (I1f6e4, b/480220930) AugmentedObject izleme için kategoriler ayarlama özelliği eklendi.
  • xr:runtime:runtime-interfaces modülü eklendi. (I52ac6, b/461561664)

Sürüm 1.0.0-alpha11

25 Şubat 2026

androidx.xr.runtime:runtime-*:1.0.0-alpha11 iptal edilir. 1.0.0-alpha11 sürümü bu commit'leri içerir.

API Değişiklikleri

  • Kısıtlanmış ConfigMode arayüzü dahili kullanım (Ibfb87)
  • androidx.xr.runtime.Config.GeospatialMode, paket düzeyine (Ibe682) taşındı
  • androidx.xr.runtime.Config.FaceTrackingMode, paket düzeyine (Iac501) taşındı
  • androidx.xr.runtime.Config.AnchorPersistenceMode, paket düzeyine taşındı (I0360f)
  • androidx.xr.runtime.Config.DepthEstimationMode, paket düzeyine (I7e3e9) taşındı.
  • androidx.xr.runtime.Config.DeviceTrackingMode, paket düzeyine (I3aacd) taşındı
  • androidx.xr.runtime.Config.HandTrackingMode, paket düzeyine (I658f3) taşındı.
  • androidx.xr.runtime.Config.PlaneTrackingMode, paket düzeyine taşındı (Ia251b)
  • androidx.xr.runtime.XrDevice.DisplayBlendMode, paket düzeyine (I6f333) taşındı
  • Bir Context, Session ve CoroutineContext kullanarak XrDevice oluşturmak için bir fabrika yöntemi eklendi. (I139c5)
  • Platformda kullanılabilen Android XR'ın çalışma zamanı sürümünü sorgulamaya yardımcı olması için SpatialApiVersionHelper eklendi. (I7c53c)
  • xr:runtime:runtime-openxr modülü eklendi (Ib42ea)

Sürüm 1.0.0-alpha10

28 Ocak 2026

androidx.xr.runtime:runtime-*:1.0.0-alpha10 iptal edilir. 1.0.0-alpha10 sürümü bu commit'leri içerir.

API Değişiklikleri

  • ConfigMode.HeadTrackingMode, ConfigMode.DeviceTrackingMode ile değiştirildi. (le273e, b/467150206)
  • Quaternion'ın toNormalized, times(float), div(float) yöntemleri kaldırıldı. Bu yöntemler, tüm kuaterniyonlar oluşturma sırasında normalleştirildiği ve sınıfın değişmez olduğu için gereksizdir. (l558fc, b/460210457)

Hata Düzeltmeleri

  • Session.create dokümanına, uygulamanın ana iş parçacığında oturum oluşturmaktan nasıl kaçınılacağını gösteren bir doküman eklendi. (le5554, b/463687170)
  • Uygulamaların NaN değeriyle BoundingBox oluşturması engellendi. (l58c14, b/464025895)

Sürüm 1.0.0-alpha09

3 Aralık 2025

androidx.xr.runtime:runtime-*: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.runtime:runtime-*:1.0.0-alpha08 iptal edilir. 1.0.0-alpha08 sürümü bu commit'leri içerir.

Yeni Özellikler

  • Cihaz özellikleri hakkında bilgi sağlamak için XrDevice eklendi. (Ic9d1f)
  • Oturum özelliklerini sorgulamak için yeni ConfigMode.isSupported API'si eklendi. (Iff7af)
  • XrDisplay.BlendMode API'si eklendi. (I484e4)

API Değişiklikleri

  • [XrDevice.getPreferredBlendMode] işlevi [XrDevice.getPreferredDisplayBlendMode] olarak yeniden adlandırıldı. (I7e48f)

Sürüm 1.0.0-alpha07

22 Ekim 2025

androidx.xr.runtime:runtime-*:1.0.0-alpha07 iptal edilir. 1.0.0-alpha07 sürümü bu commit'leri içerir.

API Değişiklikleri

  • SessionConfigureConfigureNotSupported öğesini kaldırıp UnsupportedOperationException ile değiştirin. (I7680f)

Sürüm 1.0.0-alpha06

24 Eylül 2025

androidx.xr.runtime:runtime-*:1.0.0-alpha06 iptal edilir. 1.0.0-alpha06 sürümü bu commit'leri içerir.

API Değişiklikleri

  • HandJointType, xr:runtime:runtime kuruluş biriminden xr:arcore:arcore kuruluş birimine taşındı. (Iadb9c, b/409058039)
  • componentWiseMultiplication için çarpma operatörünü Vector2, Vector3, Vector4 olarak değiştirme ve diğer matematik kitaplıklarıyla tutarlılık için operatör simgesini kaldırma. Ayrıca, Vector.scale(otherVector.inverse()) yerine componentWiseDivision öğesini Vector sınıflarından kaldırıyoruz. (I8e1f6, b/399146447)
  • Ölçeği bir olan bir matris döndürmek için [unscaled] ekleyin. (I6381d, b/434928658)
  • Coroutines.kt, SuspendtoFutureAdapter ile değiştirildiğinden :xr:runtime:runtime-guava kaldırılacak. (I0cd3c, b/406597902)

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 ve TrackingState öğelerini ekleyin. (I55880, b/334645808)
  • Yapılandırma uygulamasını herkese açık hale getirin. (I95860, b/334645808)
  • Yeni SessionCreateResult ve SessionConfigureResult türleri eklendi. (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 androidx.xr.runtime.math.IntSize2d adlı klasöre taşındı. androidx.xr.scenecore.Dimensions adlı öğe, androidx.xr.runtime.math.FloatSize3d olarak yeniden adlandırıldı ve androidx.xr.runtime.math.FloatSize3d adlı klasöre 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 yerine androidx.xr.runtime.FieldOfView politikasını kullanın. (I9ae27)
  • Session.create için, oturumun bağlanacağı bir LifecycleOwner sağlayabilen ek bir aşırı yükleme eklendi. Kaynak sahipliği için yine bir Etkinlik sağlanması gerektiğini ve LifecycleOwner özelliğinin Etkinlik kapsamında olması 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ılması için KGP 2.0.0 veya daha yeni bir sürüm 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 iken androidx.xr.runtime.manifest olarak değiştirildi. (I610ad, b/418800249)
  • Session.resume(), Session.pause() ve Session.destroy(), API yüzeyinden kaldırıldı. Oturum artık LifecycleOwner değil. Oturumun yaşam döngüsü artık Session.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ısı (:xr:runtime:runtime) yalnızca Kotlin tarzı eş zamansız API'ler içerir. Java geliştiriciler, uyumlu API'lere erişmek için xr: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 ve Session.configure artık SessionCreatePermissionsNotGranted veya SessionConfigurePermissionsNotGranted döndürmek yerine yeterli izin verilmediğinde SecurityException hatası veriyor. (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

  • Session 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ğinin kullanıcının görüş alanının içine veya dışına taşındığı zamanları izlemek için Spatial Visibility Callback uzantı 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 hem SceneCore hem de çalışma zamanında kullanılacak.
  • ActivityPose.hitTest eklendi. Bu sayede sanal içeriklere karşı hitTest uygulanabilir.
  • 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ızca PanelEntity örneğe eklenebilir.

API Değişiklikleri

  • Yapılandırma uygulamasını herkese açık hale getirin. (I95860)
  • HandJointType ve TrackingState öğ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çindeki android.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çeren bir Config nesnesinde iletilir.
  • Session.configure artık kullanılabilir çalışma zamanı özelliklerini yapılandırmak için Config ile çağrılabilir.
  • Session.create artık CoroutineDispatcher yerine CoroutineContext iletmeyi destekliyor.
  • Session.create, Jetpack XR ve/veya SceneCore için ARCore yüklemeyi destekler. En az biri sağlanmalıdır (test sürümleri mevcuttur).
  • FakePerceptionManager, Anchor.load ve Anchor.unpersist'e geçersiz bir UUID iletildiğinde AnchorInvalidUuidException 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ı. 1.0.0-alpha03 sürümü 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 Anchor döndüren OpenXR çalışma zamanı işlevleri, OpenXR kaynak sınırına ulaşıldığını bildiren bir hata koduyla karşılaştıklarında AnchorResourcesExhaustedException hata mesajını veriyor.
  • Session.create ve Session.resume için artık android.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ümün özellikleri

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, tüm Jetpack XR API yüzeyinde kullanılan Vector3 ve Matrix4 gibi temel matematik 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. Ayrıca, temel sistem özelliklerinin kilidini açmak için diğer tüm API'lerde kullanacağınız tanıtıcıdır.

  • Pose: Konum ve yönlendirme bilgisi içeren, rastgele bir koordinat sistemindeki konum. Bu sınıfı, Jetpack XR ve Jetpack SceneCore için ARCore ile nesnelerin konumunu iletmek üzere kullanacaksı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.