بيئة تشغيل الواقع الممتد
| آخر الأخبار | الإصدار الثابت | إصدار محتمل | الإصدار التجريبي | الإصدار الأولي |
|---|---|---|---|---|
| 25 فبراير 2026 | - | - | - | 1.0.0-alpha11 |
تحديد الاعتماديات
لإضافة اعتمادية على وقت تشغيل XR، يجب تضمين مستودع Google Maven في مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.
أضِف الاعتماديات الخاصة بالعناصر التي تحتاج إليها في ملف build.gradle لتطبيقك أو وحدتك:
Groovy
dependencies { implementation "androidx.xr.runtime:runtime:1.0.0-alpha11" // Optional dependencies for asynchronous conversions implementation "androidx.xr.runtime:runtime-guava:1.0.0-alpha11" implementation "androidx.xr.runtime:runtime-rxjava3:1.0.0-alpha11" // Use in environments that do not support OpenXR testImplementation "androidx.xr.runtime:runtime-testing:1.0.0-alpha11" }
Kotlin
dependencies { implementation("androidx.xr.runtime:runtime:1.0.0-alpha11") // Optional dependencies for asynchronous conversions implementation("androidx.xr.runtime:runtime-guava:1.0.0-alpha11") implementation("androidx.xr.runtime:runtime-rxjava3:1.0.0-alpha11") // Use in environments that do not support OpenXR testImplementation("androidx.xr.runtime:runtime-testing:1.0.0-alpha11") }
لمزيد من المعلومات حول الاعتماديات، يُرجى الاطّلاع على إضافة اعتماديات الإصدار.
الملاحظات
تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية من خلال النقر على زر النجمة.
يُرجى الاطّلاع على مستندات Issue Tracker للحصول على مزيد من المعلومات.
الإصدار 1.0
الإصدار 1.0.0-alpha11
25 فبراير 2026
تم طرح androidx.xr.runtime:runtime-*:1.0.0-alpha11. يتضمّن الإصدار 1.0.0-alpha11 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- واجهة
ConfigModeمحظورة للاستخدام الداخلي (Ibfb87) - تم نقل
androidx.xr.runtime.Config.GeospatialModeإلى مستوى الحزمة (Ibe682) - تم نقل
androidx.xr.runtime.Config.FaceTrackingModeإلى مستوى الحزمة (Iac501) - تم نقل
androidx.xr.runtime.Config.AnchorPersistenceModeإلى مستوى الحزمة (I0360f) - تم نقل
androidx.xr.runtime.Config.DepthEstimationModeإلى مستوى الحزمة (I7e3e9) - تم نقل
androidx.xr.runtime.Config.DeviceTrackingModeإلى مستوى الحزمة (I3aacd) - تم نقل
androidx.xr.runtime.Config.HandTrackingModeإلى مستوى الحزمة (I658f3) - تم نقل
androidx.xr.runtime.Config.PlaneTrackingModeإلى مستوى الحزمة (Ia251b) - تم نقل
androidx.xr.runtime.XrDevice.DisplayBlendModeإلى مستوى الحزمة (I6f333) - تمت إضافة طريقة مصنع لإنشاء
XrDeviceباستخدام Context وSession وCoroutineContext. (I139c5) - تمت إضافة
SpatialApiVersionHelperللمساعدة في طلب إصدار وقت التشغيل من Android XR المتوفّر على المنصة. (I7c53c) - تمت إضافة الوحدة
xr:runtime:runtime-openxr(Ib42ea)
الإصدار 1.0.0-alpha10
28 يناير 2026
تم طرح androidx.xr.runtime:runtime-*:1.0.0-alpha10. يتضمّن الإصدار 1.0.0-alpha10 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تم استبدال "
ConfigMode.HeadTrackingMode" بـ "ConfigMode.DeviceTrackingMode". (le273e، b/467150206) - تمت إزالة طرق
toNormalizedوtimes(float)وdiv(float)في Quaternion. هذه الطرق غير ضرورية لأنّ جميع الأعداد الرباعية يتمّ تسويتها في وقت الإنشاء ولأنّ الفئة غير قابلة للتغيير. (l558fc، b/460210457)
إصلاح الأخطاء
- تمت إضافة مستندات إلى
Session.createتوضّح كيفية تجنُّب إنشاء جلسة في سلسلة التعليمات البرمجية الرئيسية للتطبيق. (le5554، b/463687170) - منع التطبيقات من إنشاء
BoundingBoxبقيمةNaN(l58c14، b/464025895)
الإصدار 1.0.0-alpha09
3 ديسمبر 2025
تم طرح androidx.xr.runtime:runtime-*:1.0.0-alpha09. يتضمّن الإصدار 1.0.0-alpha09 هذه التعديلات.
الإصدار 1.0.0-alpha08
19 نوفمبر 2025
تم طرح androidx.xr.runtime:runtime-*:1.0.0-alpha08. يتضمّن الإصدار 1.0.0-alpha08 هذه التعديلات.
الميزات الجديدة
- تمت إضافة
XrDeviceلتقديم معلومات حول إمكانيات الجهاز. (Ic9d1f) - تمت إضافة واجهة برمجة تطبيقات
ConfigMode.isSupportedجديدة للاستعلام عن إمكانات الجلسة. (Iff7af) - تمت إضافة واجهة برمجة التطبيقات
XrDisplay.BlendMode. (I484e4)
تغييرات واجهة برمجة التطبيقات
- تمت إعادة تسمية [XrDevice.getPreferredBlendMode] إلى [XrDevice.getPreferredDisplayBlendMode]. (I7e48f)
الإصدار 1.0.0-alpha07
22 أكتوبر 2025
تم طرح androidx.xr.runtime:runtime-*:1.0.0-alpha07. يتضمّن الإصدار 1.0.0-alpha07 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- إزالة
SessionConfigureConfigureNotSupportedواستبدالها بـUnsupportedOperationException(I7680f)
الإصدار 1.0.0-alpha06
24 سبتمبر 2025
تم طرح androidx.xr.runtime:runtime-*:1.0.0-alpha06. يتضمّن الإصدار 1.0.0-alpha06 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تم نقل
HandJointTypeإلىxr:arcore:arcoreمنxr:runtime:runtime. (Iadb9c، b/409058039) - تغيير عامل التشغيل الخاص بالضرب في
componentWiseMultiplicationإلىVector2وVector3وVector4لتوسيع نطاقه وإزالة رمز عامل التشغيل لتحقيق التوافق مع مكتبات الرياضيات الأخرى تمت أيضًا إزالةcomponentWiseDivisionمن فئات Vector بدلاً من استخدامVector.scale(otherVector.inverse()). (I8e1f6، b/399146447) - إضافة [unscaled] لعرض مصفوفة بمقياس واحد (I6381d، b/434928658)
- ستتم إزالة
:xr:runtime:runtime-guavaلأنّCoroutines.ktتم استبداله بـSuspendtoFutureAdapter. (I0cd3c، b/406597902)
الإصدار 1.0.0-alpha05
30 يوليو 2025
تم طرح androidx.xr.runtime:runtime-*:1.0.0-alpha05. يتضمّن الإصدار 1.0.0-alpha05 هذه التعديلات.
الميزات الجديدة
- أضِف
HandJointTypeوTrackingState. (I55880، b/334645808) - إتاحة تنفيذ Config بشكل علني (I95860، b/334645808)
- تم تقديم نوعَي
SessionCreateResultوSessionConfigureResultجديدَين. (Icb8cb، b/334645808) - أضِف فئة
BoundingBoxجديدة تمثّل مربّعًا محيطًا متوازيًا مع المحاور في الفضاء الثلاثي الأبعاد، ويتم تحديده من خلال نقاط الزاوية الدنيا والقصوى. (Ic68c5، b/423073468)
تغييرات واجهة برمجة التطبيقات
- تمت إعادة تسمية
androidx.xr.scenecore.PixelDimensionsونقلها إلىandroidx.xr.runtime.math.IntSize2d. تمت إعادة تسميةandroidx.xr.scenecore.Dimensionsونقلها إلىandroidx.xr.runtime.math.FloatSize3d. تمت إعادة تسمية "androidx.xr.scenecore.PlaneType" إلى "androidx.xr.scenecore.PlaneOrientation". تمت إعادة تسمية "androidx.xr.scenecore.PlaneSemantic" إلى "androidx.xr.scenecore.PlaneSemanticType". (Ifd405، b/416456228) - تمت إزالة الصف
androidx.xr.runtime.FoV. يمكنك استخدامandroidx.xr.runtime.FieldOfViewكبديل. (I9ae27) - تمت إضافة تحميل زائد إضافي للدالة
Session.createيمكنه توفيرLifecycleOwnerللجلسة لربطها. يُرجى العِلم أنّه سيظلّ عليك تقديم "نشاط" لإثبات ملكية المرجع، ويجب أن يكون نطاقLifecycleOwnerضمن "النشاط". (I1690b) - تمت إعادة تسمية
FakeRuntimeAnchor.anchorsCreatedإلىanchorsCreatedCount(I96df9، b/424441218) - تمت إعادة تسمية قيم Config
*Modeلتعكس سلوكها. (I6d247، b/414648065) - تتطلّب المشاريع التي تم إصدارها باستخدام Kotlin 2.0 استخدام الإصدار 2.0.0 أو إصدار أحدث من KGP (Idb6b5، b/344563182)
- تم نقل واجهات برمجة التطبيقات المرتبطة بسلاسل البيان من
:xr:runtime:runtimeإلى:xr:runtime:runtime-manifest. تم تغيير اسم الحزمة منandroidx.xr.runtimeإلىandroidx.xr.runtime.manifest. (I610ad، b/418800249) - تمت إزالة
Session.resume()وSession.pause()وSession.destroy()من مساحة عرض واجهة برمجة التطبيقات. لم تعُد الجلسةLifecycleOwner. سيتم الآن ربط مراحل نشاط الجلسة بمراحل نشاط النشاط الذي تم تمريره فيSession.create(). (I28a03) - تستخدم هذه المكتبة الآن تعليقات توضيحية بشأن القيم الخالية من JSpecify، وهي تعليقات توضيحية خاصة باستخدام النوع. على مطوّري Kotlin استخدام وسيطة المترجم البرمجي التالية لفرض الاستخدام الصحيح:
-Xjspecify-annotations=strict(هذه هي القيمة التلقائية بدءًا من الإصدار 2.1.0 من المترجم البرمجي للغة Kotlin) (Ia8420، b/326456246) - سيحتوي العنصر الرئيسي لوقت التشغيل (
:xr:runtime:runtime) على واجهات برمجة تطبيقات غير متزامنة بنمط Kotlin فقط. يمكن لمطوّري Java الاعتماد على:xr:runtime:runtime-guavaللوصول إلى واجهات برمجة التطبيقات المتوافقة. (I05d4a، b/426639315) - لن يحتوي العنصر الرئيسي لوقت التشغيل (
:xr:runtime:runtime) إلا على واجهات برمجة تطبيقات غير متزامنة بنمط Kotlin. يمكن لمطوّري Java الاعتماد على مكتبةxr:runtime:runtime-rxjava3للوصول إلى واجهات برمجة التطبيقات المتوافقة. (I64122، b/426639775) - نقل الروتينات المشتركة إلى
:xr:runtime:runtime-guavaوعناصر Flow إلى:xr:runtime:runtime-rxjava3(I60ae9) - تعرض الدالتان
Session.createوSession.configureالآن الخطأSecurityExceptionعند عدم منح أذونات كافية بدلاً من عرضSessionCreatePermissionsNotGrantedأوSessionConfigurePermissionsNotGranted. (I7c488، b/430651879)
الإصدار 1.0.0-alpha04
7 مايو 2025
تم إصدار androidx.xr.runtime:runtime:1.0.0-alpha04 وandroidx.xr.runtime:runtime-openxr:1.0.0-alpha04 وandroidx.xr.runtime:runtime-testing:1.0.0-alpha04. يتضمّن الإصدار 1.0.0-alpha04 هذه التعديلات.
الميزات الجديدة
- تنفّذ الفئة Session الآن
androidx.lifecycle.LifecycleOwnerلتحقيق المزيد من إمكانية التشغيل التفاعلي مع نماذج مراحل النشاط الحالية في Android. - يتم تحديد سلاسل البيان لمنصة Android XR وتوثيقها هنا.
- تمت إضافة طرق ملحقة لـ Spatial Visibility Callback لمراقبة وقت انتقال محتوى المشهد إلى داخل أو خارج مجال رؤية المستخدم.
- تمت إضافة نسخة رمز بديل من
JxrPlatformAdapter(وجميع الفئات ذات الصلة). - سيتم استخدام الجلسة في كل من
SceneCoreوRuntime بدلاً من الجلسة فيSceneCore. - تمت إضافة
ActivityPose.hitTest، ما يتيحhitTestضد المحتوى الافتراضي. - أصبحت إمكانية تحديد عمليات تنفيذ متعددة لـ Runtime متاحة الآن في وقت الترجمة البرمجية. سيتم تحميل واحدة فقط في وقت التنفيذ استنادًا إلى مجموعة الخصائص الحالية للجهاز.
- تمت إضافة نوع "مكوّن" جديد
SpatialPointerComponent، ما يتيح للعملاء تحديد الرمز المعروض للمؤشر أو إيقاف الرمز. يمكن حاليًا إرفاق هذا المكوّن بـPanelEntityمثيل فقط.
تغييرات واجهة برمجة التطبيقات
- إتاحة تنفيذ Config بشكل علني (I95860)
- أضِف
HandJointTypeوTrackingState. (I55880) - تتطلّب المشاريع التي تم إصدارها باستخدام Kotlin 2.0 استخدام الإصدار 2.0.0 من KGP أو إصدار أحدث (Idb6b5)
- تم تغيير
Hand.isActive (boolean)إلىHand.trackingState. تم تعديل طريقة تنفيذOpenXRوفقًا لذلك. - تم تغيير متطلبات الإذن
android.permission.SCENE_UNDERSTANDINGفيSession.configureإلىandroid.permission.SCENE_UNDERSTANDING_COARSE. - تم تنفيذ
LifecycleManager.configure، ويتم الآن تمرير كائنConfigيحتوي على سمة لكل ميزة قابلة للإعداد في وقت التشغيل. - يمكن الآن استدعاء
Session.configureباستخدامConfigمن أجل ضبط ميزات وقت التشغيل المتاحة. - تتيح
Session.createالآن تمريرCoroutineContextبدلاً منCoroutineDispatcher. - يتيح
Session.createتحميلARCoreلـ Jetpack XR و/أوSceneCore. يجب توفير واحد على الأقل (تتوفّر إصدارات تجريبية). - تُصدر الدالة
FakePerceptionManagerالخطأAnchorInvalidUuidExceptionعند تمرير معرّف فريد عالمي غير صالح إلىAnchor.loadوAnchor.unpersist. - لم تعُد
CoreStateفئة بيانات.
إصلاح الأخطاء
- تم إصلاح إعدادات Proguard في بيئة التشغيل.
الإصدار 1.0.0-alpha03
26 فبراير 2025
تم إصدار androidx.xr.runtime:runtime:1.0.0-alpha03 وandroidx.xr.runtime:runtime-openxr:1.0.0-alpha03 وandroidx.xr.runtime:runtime-testing:1.0.0-alpha03 بدون أي تغييرات ملحوظة منذ آخر إصدار أولي. يتضمّن الإصدار 1.0.0-alpha03 هذه التعديلات.
الإصدار 1.0.0-alpha02
12 فبراير 2025
تم إصدار androidx.xr.runtime:runtime:1.0.0-alpha02 وandroidx.xr.runtime:runtime-openxr:1.0.0-alpha02 وandroidx.xr.runtime:runtime-testing:1.0.0-alpha02. يتضمّن الإصدار 1.0.0-alpha02 هذه التعديلات.
التغييرات التي قد تؤدي إلى عطل والتغييرات السلوكية
- تعرض الآن دوال وقت التشغيل
OpenXRالتي تعرض Anchor الخطأAnchorResourcesExhaustedExceptionإذا واجهت رمز خطأ يشير إلى أنّه تم بلوغ الحد الأقصى لموردOpenXR. - يجب الآن الحصول على الإذن
android.permission.HAND_TRACKINGلاستخدامSession.createوSession.resume.
الميزات الجديدة
- تمت إضافة ميزة تتبُّع اليد.
إصلاح الأخطاء
- يكون إنشاء نقاط الارتكاز أكثر استقرارًا عند التشغيل على محاكي
الإصدار 1.0.0-alpha01
12 ديسمبر 2024
تم طرح androidx.xr.runtime:runtime-* 1.0.0-alpha01.
ميزات الإصدار الأوّلي
الإصدار الأولي من Jetpack XR Runtime تحتوي هذه المكتبة على أجزاء أساسية من وظائف مجموعة مكتبات Jetpack XR. ويشمل ذلك اكتشاف الإمكانات وإدارة مراحل النشاط والإعدادات وغير ذلك. توفّر مكتبة وقت التشغيل صيغًا مختلفة (مثل runtime-openxr أو runtime-testing) استنادًا إلى منصة التنفيذ. بالإضافة إلى ذلك، توفّر هذه المكتبة تجريدات رياضية أساسية، مثل Vector3 وMatrix4، يتم استخدامها في جميع مساحات Jetpack XR API.
Session: يوفّر لك عناصر تحكّم دقيقة في نظام الواقع الممتد، بما في ذلك تحديد وقت تنفيذ المعالجة ووقت عدم تنفيذها والإعدادات العامة. وهي أيضًا المعرّف الذي ستستخدمه في جميع واجهات برمجة التطبيقات الأخرى للاستفادة من إمكانات النظام الأساسية.
Pose: موقع جغرافي في نظام إحداثيات عشوائي يتضمّن موضعًا واتجاهًا مرتبطَين به. ستستخدِم هذه الفئة لإرسال معلومات حول موقع العناصر إلى ARCore for Jetpack XR وJetpack SceneCore.
المشاكل المعروفة
configureلا يعمل حاليًا، ولكن ستضيف الإصدارات المستقبلية إعدادات جديدة يمكنك استخدامها للتحكّم في سلوكSession.