‫ARCore for Jetpack XR

يمكنك دمج المحتوى الرقمي في العالم الحقيقي باستخدام إمكانات الإدراك.
آخر تحديث الإصدار المستقر إصدار محتمل الإصدار التجريبي الإصدار الأولي
‫21 أكتوبر 2026 1.0.0 - - 1.1.0-alpha01

تحديد الاعتماديات

لإضافة اعتمادية على ARCore for Jetpack XR، يجب تضمين مستودع Google Maven في مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.

أضِف الاعتماديات الخاصة بالعناصر التي تحتاج إليها في ملف build.gradle لتطبيقك أو وحدتك:

Groovy

dependencies {
    implementation "androidx.xr.arcore:arcore:1.1.0-alpha01"
}

Kotlin

dependencies {
    implementation("androidx.xr.arcore:arcore:1.1.0-alpha01")
}

لمزيد من المعلومات حول الاعتماديات، يُرجى الاطّلاع على إضافة اعتماديات الإصدار.

الملاحظات

تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة تصويتك إلى مشكلة حالية من خلال النقر على زر النجمة.

إنشاء مشكلة جديدة

يُرجى الاطّلاع على مستندات Issue Tracker لمزيد من المعلومات.

الإصدار 1.1

الإصدار 1.1.0-alpha01

‫21 أكتوبر 2026

تم طرح androidx.xr.arcore:arcore-*:1.1.0-alpha01. يتضمّن الإصدار 1.1.0-alpha01 هذه التعديلات.

التغييرات في واجهة برمجة التطبيقات

  • تم تقديم واجهة برمجة التطبيقات SpatialAnnotation لتتبُّع الأشكال الهندسية والأجسام المادية الثلاثية الأبعاد. تمت إضافة SpatialAnnotationTrackingOptions ونمط الإنشاء المقابل له لضبط التتبُّع المكاني من خلال مخازن الصور المؤقتة في الكاميرا. (I918ce)
  • تمت إضافة SpatialAnnotation وSpatialAnnotationTrackingMode إلى Jetpack XR ARCore، ما يتيح للمطوّرين ضبط وتتبُّع الأشكال الهندسية الرباعية الأضلاع الثلاثية الأبعاد المحدودة العشوائية (Quad) التي تستهدف البيئات المكانية المادية في العالم الحقيقي. (I880e4)
  • تمت إضافة TestSpatialAnnotation للسماح بالمحاكاة الآلية للتعليقات التوضيحية المكانية في الاختبارات المبرمَجة. (If2335)
  • تمت إضافة geospatialPose وhorizontalAccuracy وverticalAccuracy وorientationYawAccuracy كواجهات برمجة تطبيقات جديدة لتقديم المزيد من المعلومات في الحالة الجغرافية المكانية. (If28f8)

إصلاح الأخطاء

  • تم تحديث تبعية androidx.lifecycle:lifecycle-runtime إلى الإصدار 2.10.0. هذا الإصدار مطلوب لتشغيل عمليات فحص lint المجمّعة لوقت تشغيل مراحل النشاط مع الإصدار 9.5.0-alpha04 من AGP أو الإصدارات الأحدث. (I99bfd، b/556807521)
  • تم التحقّق من الحد الأقصى لعدد الصور الذي يبلغ 0 عند ضبط AugmentedImage، ما يؤدي إلى ظهور UnsupportedOperationException بدلاً من حدوث عطل غير متوقّع. I6ce439
  • يمكنك إصلاح تسرُّب الذاكرة ومشاكل التزامن في AugmentedImageRenderer من خلال تتبُّع مهام العرض وإلغائها بشكل صحيح، والتخلص من الكيانات، وتعديل مجموعة الصور بأمان. Ie70760

الإصدار 1.0

الإصدار 1.0.0

‫21 أكتوبر 2026

تم طرح androidx.xr.arcore:arcore-*:1.0.0. يتضمّن الإصدار 1.0.0 هذه التعديلات.

الميزات الرئيسية للإصدار 1.0.0:

  • أصبح ARCore for Jetpack XR مستقرًا الآن. توفّر مكتبة ARCore for Jetpack XR إمكانات لدمج المحتوى الرقمي مع العالم الحقيقي. تتضمّن هذه المكتبة ميزات تتبُّع الحركة، والمثبّتات الثابتة، واختبار مؤشر الماوس، وتحديد المستوى باستخدام التصنيف الدلالي (مثل الأرضية والجدران وأسطح الطاولات)، والوضعيات الجغرافية المكانية باستخدام "نظام تحديد الموقع المرئي" من Google.
  • لمزيد من المعلومات، يُرجى الاطّلاع على دليل المطوّر ومرجع واجهة برمجة التطبيقات.

الإصدار ‎1.0.0-rc02

‫7 أكتوبر 2026

تم طرح androidx.xr.arcore:arcore-*:1.0.0-rc02. يتضمّن الإصدار 1.0.0-rc02 هذه التعديلات.

إصلاح الأخطاء

  • تم إصلاح مشكلة تعذُّر ضبط الجلسة في OpenXrRuntime عندما كانت ميزة تتبُّع الصور المعزَّزة غير متوافقة. (I8b9759)
  • تم إصلاح مشاكل متعددة، بما في ذلك: تحسين إدارة الذاكرة في XrInstanceManager باستخدام applicationContext، وحلّ المشاكل المحتملة المتعلّقة بمراحل النشاط من خلال تبسيط آليات التخزين المؤقت في Session وScene، وتحسين ReferenceCleaner لضمان عمليات تسجيل آمنة لسلاسل التعليمات وعمليات التخلص الصريحة. (Id0b76c)

الإصدار ‎1.0.0-rc01

‫9 سبتمبر 2026

تم طرح androidx.xr.arcore:arcore-*:1.0.0-rc01. يتضمّن الإصدار 1.0.0-rc01 هذه التعديلات.

الإصدار ‎1.0.0-beta02

‫12 أغسطس 2026

تم طرح androidx.xr.arcore:arcore-*:1.0.0-beta02. يتضمّن الإصدار 1.0.0-beta02 هذه التعديلات.

إصلاح الأخطاء

  • تم إصلاح مشكلة التزامن في ثبات علامة الارتساء في OpenXR. (I15c8b)
  • تم تنفيذ toString() في المزيد من الفئات لتصحيح الأخطاء. (I587e8)

الإصدار ‎1.0.0-beta01

‫15 يوليو 2026

تم طرح androidx.xr.arcore:arcore-*:1.0.0-beta01. يتضمّن الإصدار 1.0.0-beta01 هذه التعديلات.

التغييرات في واجهة برمجة التطبيقات

  • تم تعديل المُعدِّل القابل لتغيير الحجم لاستخدام ResizePolicy بدلاً من مُعدِّلَين (I7fb0f وb/496257436 وb/519672992)
  • تمت إضافة دالة overload قابلة للنقل مع مَعلمة movePolicy وإيقاف transformingMovable وmovable نهائيًا (Ic88c1، b/481781189)
  • تمت إزالة TrackingState.TRACKING_DEGRADED من واجهة برمجة التطبيقات العلنية، وتم ربط حالات وقت التشغيل المنخفضة بـ PAUSED بدلاً من ذلك. يجب تعديل TrackingState لاستخدام التعدادات بدلاً من قيم int لتحويل السلسلة وتحويل وقت التشغيل. (I3eb5b، b/524326338)
  • تم تحويل Session.create إلى دالة تعليق. (I5d27f)
  • تم إيقاف ProjectedPermissionsResultContract نهائيًا (I141d5، b/515699436)
  • تم تعديل AnchorEntity ليصبح اسمه AnchorSpace (Ifa95e، b/513619219)

الإصدار 1.0.0-alpha15

‫17 يونيو 2026

تم طرح androidx.xr.arcore:arcore-*:1.0.0-alpha15. يتضمّن الإصدار 1.0.0-alpha15 هذه التعديلات.

التغييرات في واجهة برمجة التطبيقات

  • تمت إزالة الحقل "HitResult.createAnchor". يمكن للمطوّرين إنشاء نقطة ارتساء تمثّل HitResult إذا كان العنصر القابل للتتبّع في النتيجة هو Anchorable من خلال توفير موضع النقر لدالة createAnchor في Anchorable. (Ia851e)
  • تمت إزالة الحقل "AnchorUnsupportedObject". ولم يعُد يتم طرحه من خلال وقت تشغيل JXR ARCore. (Ia851e)
  • androidx.xr.arcore.Anchor وandroidx.xr.arcore.ArDevice تنفّذان الآن androidx.xr.arcore.Trackable. (I57b65)
  • أصبحت السمتان Depth.left وDepth.right والسمة Depth.mono الآن غير قابلة للإلغاء (I1fc5e)
  • ‫Face.getUserFace غير قابل الآن لأن يكون فارغًا (I0eac1)
  • ‫RenderViewpoint.left وRenderViewpoint.right وRenderViewpoint.mono أصبحت الآن غير قابلة للإلغاء (Icf7fa)
  • ‫Hand.left وHand.right غير قابلَين للإلغاء (Icef37)
  • تمت إضافة واجهة برمجة التطبيقات QrCode (Ia0bbe).

الإصدار ‎1.0.0-alpha14

‫19 مايو 2026

تم طرح androidx.xr.arcore:arcore-*:1.0.0-alpha14. يتضمّن الإصدار 1.0.0-alpha14 هذه التعديلات.

التغييرات في واجهة برمجة التطبيقات

  • سيتم إيقاف GeospatialMode.VPS_AND_GPS نهائيًا واستبدالها بـ GeospatialMode.SPATIAL، وسيتم تقديم وضع تتبُّع جديد منخفض الطاقة، وهو GeospatialMode.INERTIAL، والذي يستخدم فقط وحدة القياس بالقصور الذاتي (IMU) ونظام تحديد المواقع العالمي (GPS). (I1e6cd)
  • فئات الاستثناءات المخصّصة للإعلانات الثابتة: AnchorInvalidUuidException وAnchorNotAuthorizedException وAnchorUnsupportedLocationException وAnchorRuntimeFailureException وAnchorUnsupportedObjectException هي الآن مثيلات RuntimeException، وليس من المفترض التحقّق منها. (I9356e)
  • تمت إضافة واجهة برمجة التطبيقات ArCoreTestRule، بما في ذلك TestArDevice وTestAugmentableObject وTestDepthMap وTestEye وTestFace وTestGeospatial وTestHand وTestPlane وTestRenderViewpoint وTestTrackable (I0ad3c)
  • تتم إزالة AnchorLoadInvalidUuid وAnchorCreateUnsupportedObject وAnchorCreateUnsupportedLocation وAnchorCreateNotAuthorized. كل هذه الأخطاء أصبحت الآن استثناءات في وقت التشغيل. تتم إزالة "AnchorCreateIllegalState". تم استبدال ذلك بـ "AnchorCreateTrackingUnavailable" في معظم الحالات. تتم إضافة AnchorException والفئات المشتقة AnchorInvalidUuidException وAnchorNotAuthorizedException وAnchorUnsupportedLocationException وAnchorRuntimeFailureException وAnchorUnsupportedObjectException. (I4c4dd)

مساهمة خارجية

  • تمت إضافة واجهة برمجة التطبيقات AugmentedImage لتتبُّع محدّدات المواقع المخصّصة (I0cf09)

الإصدار ‎1.0.0-alpha13

‫6 مايو 2026

تم طرح androidx.xr.arcore:arcore-*:1.0.0-alpha13. يتضمّن الإصدار 1.0.0-alpha13 هذه التعديلات.

التغييرات في واجهة برمجة التطبيقات

  • تم نقل TrackingState وVpsAvailabilityResult إلى androidx.xr.arcore package، وأصبحت الأنواع في androidx.xr.runtime متوقفة نهائيًا الآن. (Ic7930، b/480462213)
  • تمت إعادة تسمية "Plane.Type" إلى "PlaneType". (I8c90c، b/482675376)
  • تمت إعادة تسمية "Hand.HandSide" إلى "HandSide". (Ica562، b/482675376)
  • تمت إعادة تسمية "Plane.Label" إلى "PlaneLabel". (Ic6b67، b/482675376)
  • تمت إعادة تسمية "Geospatial.Surface" إلى "GeospatialSurface". (I1a8be، b/482675376)
  • تمت إعادة تسمية "Geospatial.State" إلى "GeospatialState". (I203fa، b/482675376)
  • تم نقل واجهة برمجة التطبيقات NativeData إلى مكتبة xr:runtime:runtime. (I87954، b/494251500)
  • أصبح Session.create وSession.configure غير شاملَين ويتطلبان عبارات else في عبارات when. (I9885e، b/495805998، b/495805998)
  • تم إيقاف "androidx.xr.runtime.FieldOfView" نهائيًا. يمكنك استخدام androidx.xr.runtime.math.FieldOfView كبديل. (Ia01a0، b/480233045)
  • تم تغيير Orbiter لاستخدام OrbiterAnchorPoint + VolumeOffset أو OrbiterPoseProvider بدلاً من الموضع والإزاحة وoffsetType والمحاذاة والارتفاع. تمّت أيضًا إزالة المَعلمة shouldRenderInNonSpatial. إذا لم يرغب المطوّر في عرض orbiter في وضع غير مكاني، عليه تضمين orbiter في عبارة if والتحقّق من SpatialCapabilities. (I9fbb3، b/462428503)
  • تمت إضافة عناصر تعديل قابلة للنقل. تعمل هذه المُعدِّلات بشكل جيد في الوقت الحالي مع SpatialPanels وSpatialExternalSurface. وقريبًا، ستتوفّر أيضًا في SpatialGltfModels. ومع ذلك، نهدف إلى توفير هذه الميزات بشكل جيد لجميع مستخدمي SubspaceComposables. (I9a3cd، b/479530787، b/478935063، b/478935063)
  • على المطوّرين مراقبة تدفق ArDevice.state لمراقبة State.trackingState وتعديل عرض التطبيق أو التحذيرات وفقًا لذلك استنادًا إلى دقة التتبُّع. (Ic00f0، b/445466590)
  • تمت إعادة تسمية قيم التعداد HandJointType. (Ifbc83، b/482670596)
  • تمت إعادة تسمية FaceConfidenceRegion ثابت. (Ia62d5، b/482670596)
  • تمت إعادة تسمية FaceBlendShapeType ثابت. (I33b8b، b/482670596)
  • تمّت إضافة CreatePoseFromGeospatialPoseErrorInternal وCreateGeospatialPoseFromPoseErrorInternal. (I4bcf1، b/482666615)
  • تمت إعادة تسمية DeviceTrackingMode.LAST_KNOWN إلى SPATIAL_LAST_KNOWN (مع استخدام عنصر احتياطي متوقّف نهائيًا)، وتمت إضافة INERTIAL_LAST_KNOWN لتتبُّع 3DoF، وتمت إضافة TRACKING_DEGRADED إلى TrackingState. (Ie661c، b/445466590)
  • تمّت إزالة GroupEntity. للحصول على كيان يتضمّن وظائف الكيان الأساسية فقط، يمكنك استدعاء Entity.create التي ستعرض واجهة الكيان. (I4c450، b/473867483)
  • تمت إضافة واجهة برمجة التطبيقات XrLog. اضبط XrLog.isEnabled على true لتفعيل التسجيل في JetpackXR، واستخدِم XrLog.Level لضبط مستوى التسجيل. (I76a1f، b/463460895، b/487378441)

إصلاح الأخطاء

  • إضافة إمكانية تتبُّع حالة الجهاز إلى أجهزة OpenXR (I91485، b/445466590)

الإصدار 1.0.0-alpha12

‫25 مارس 2026

تم طرح androidx.xr.arcore:arcore-*:1.0.0-alpha12. يتضمّن الإصدار 1.0.0-alpha12 هذه التعديلات.

التغييرات في واجهة برمجة التطبيقات

  • تم تغيير Config.augmentedObjectCategories من قائمة إلى مجموعة. (I25a64، b/487376359)
  • النوعان androidx.xr.arcore.Eye وandroidx.xr.arcore.Hand (I42438، b/449032900)
  • تمت إضافة تحميل زائد لـ Session.create للسماح بتمرير سياق Android لتحديد نطاق الموارد. (I7d3fe، b/415805990، b/477386334)
  • يتم تغيير FakeRuntimeAnchor.ANCHOR_RESOURCE_LIMIT إلى FakeRuntimeAnchor.anchorResourceLimit. (I90841، b/431992235)
  • تم جعل واجهة برمجة التطبيقات TiltGesture تجريبية لأنّه قد يتم تغييرها أو إزالتها في المستقبل. لاستخدام واجهة برمجة التطبيقات هذه، يجب الموافقة على @ExperimentalGesturesApi (Ic9858)
  • تمت إضافة إمكانية ضبط فئات لتتبُّع AugmentedObject في الإعدادات (I1f6e4، b/480220930)

إصلاح الأخطاء

  • تم إصلاح إصدار Chrome من خلال تعديل ملف META-INF/services/ ‎ بالموقع الجغرافي الفعلي لـ PerceptionRuntimeFactory. (I7a801، b/481288291)

الإصدار 1.0.0-alpha11

‫25 فبراير 2026

تم طرح androidx.xr.arcore:arcore-*:1.0.0-alpha11. يتضمّن الإصدار 1.0.0-alpha11 هذه التعديلات.

الإصدار 1.0.0-alpha10

‫28 يناير 2026

تم طرح androidx.xr.arcore:arcore-*:1.0.0-alpha10. يتضمّن الإصدار 1.0.0-alpha10 هذه التعديلات.

الميزات الجديدة

  • توفّر واجهة برمجة التطبيقات TiltGesture API، التي تقدّم Flow تفاعليًا لرصد حالة إمالة الجهاز (لأعلى/لأسفل) بشكل ثابت مع مستوى تقدّم الانتقال. (Ic269f، b/448152779)
  • تستخدم حزمة ARCore for Jetpack XR الآن آلية تسجيل XR Runtime. يُرجى الاطّلاع على androidx.xr.runtime.Log لمزيد من المعلومات. (l52735، b/448697662)

التغييرات في واجهة برمجة التطبيقات

  • يعمل تطبيق "Geospatial.createPoseFromGeospatialPose" الآن على الأجهزة التي تتيح استخدام OpenXR. (l362c6)

الإصدار 1.0.0-alpha09

‫3 ديسمبر 2025

تم طرح androidx.xr.arcore:arcore-*:1.0.0-alpha09. يتضمّن الإصدار 1.0.0-alpha09 هذه التعديلات.

الإصدار ‎1.0.0-alpha08

‫19 نوفمبر 2025

تم طرح androidx.xr.arcore:arcore-*:1.0.0-alpha08. يتضمّن الإصدار ‎1.0.0-alpha08 هذه التعديلات.

الميزات الجديدة

  • تتوافق حزمة ARCore لـ Jetpack XR الآن مع الأجهزة التي تتوفّر فيها "خدمات Google Play للواقع المعزّز".
  • تمت إضافة واجهات برمجة تطبيقات Geospatial APIs لتوفّر VPS وتحويل الوضع (I144dc)

الإصدار ‎1.0.0-alpha07

‫22 أكتوبر 2025

تم طرح androidx.xr.arcore:arcore-*:1.0.0-alpha07. يتضمّن الإصدار 1.0.0-alpha07 هذه التعديلات.

إصلاح الأخطاء

  • تمت إضافة :xr:arcore:arcore-openxr كعنصر تابع للتنفيذ إلى :xr:arcore:arcore (I47315، b/446999229)

الإصدار ‎1.0.0-alpha06

‫24 سبتمبر 2025

تم طرح androidx.xr.arcore:arcore-*:1.0.0-alpha06. يتضمّن الإصدار 1.0.0-alpha06 هذه التعديلات.

التغييرات في واجهة برمجة التطبيقات

  • تم نقل ميزة اختبار ARCore إلى وحدة xr:arcore:arcore-testing. (I25469)
  • إضافة ArDevice وRenderViewpoint للسماح للتطبيقات باسترداد وضعية الجهاز وإعدادات العرض لأغراض العرض (Ib7e3f)
  • إعادة تسمية تعدادات HandJointType باستخدام البادئة HAND_JOINT_TYPE_ (I3f7cd)
  • تم نقل "HandJointType" إلى "xr:arcore:arcore" من "xr:runtime:runtime". (Iadb9c، b/409058039)
  • يعرض Hand.State الآن java.nio.FloatBuffer مع أوضاع المفاصل بتنسيق يتيح الوصول السهل إلى التطبيقات التي تركّز على الأداء. (I55e27)

الإصدار ‎1.0.0-alpha05

‫30 يوليو 2025

تم إصدار "androidx.xr.arcore:arcore:1.0.0-alpha05" و"androidx.xr.arcore:arcore-guava:1.0.0-alpha05" و"androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha05". يتضمّن الإصدار 1.0.0-alpha05 هذه التعديلات.

الميزات الجديدة

  • إضافة getPrimaryHandSide ليتمكّن المطوّر من الحصول على معلومات حول اليد المستخدمة (I270bd)
  • إضافة واجهة برمجة تطبيقات للتحقّق من مدى توفّر خدمة VPS في المواقع الجغرافية (I58573)
  • إضافة ARCore API لـ "checkVpsAvailability" (Idbded)
  • تمت إضافة دالّتَي الإضافة ‎stateFlowable إلى ‎:xr:arcore:arcore-rxjava3 ليستخدمهما مطوّرو Java. (I083aa، b/427247794)

التغييرات في واجهة برمجة التطبيقات

  • تمت إعادة تسمية قيم الإعدادات *Mode لتعكس سلوكها. (I6d247، b/414648065)
  • لن يحتوي عنصر ARCore الرئيسي (xr:arcore:arcore) إلا على واجهات برمجة تطبيقات غير متزامنة بنمط Kotlin. يمكن لمطوّري Java الاعتماد على مكتبة xr:arcore:arcore-rxjava3 للوصول إلى واجهات برمجة التطبيقات المتوافقة. (Ia525e، b/422794329)
  • لن يحتوي عنصر ARCore الرئيسي (xr:scenecore:scenecore) إلا على واجهات برمجة تطبيقات غير متزامنة بنمط Kotlin. يمكن لمطوّري Java الاعتماد على مكتبة xr:arcore:arcore-guava للوصول إلى واجهات برمجة التطبيقات المتوافقة. (Iffcb4، b/422773524)
  • تمت إضافة Anchor.persistAsync() إلى AnchorGuava ليستخدمه مطوّرو Java. (I4af1c، b/425984631)
  • تمت إضافة Earth.createAnchorOnSurfaceAsync(Session, Double, Double, Double, Quaternion, Surface) إلى EarthGuava ليستخدمه مطوّرو Java. (I66357، b/425992992)
  • سيستخدم مطوّرو Java دوال الإضافة لـ GltfModel.createAsync في GltfModel.kt. سيتم حذف الدوال غير المتزامنة في GltfModel. (I0af60)
  • تستخدم هذه المكتبة الآن تعليقات JSpecify التوضيحية للقيمة الفارغة، وهي من نوع الاستخدام. على مطوّري Kotlin استخدام وسيطة برنامج التجميع التالية لفرض الاستخدام الصحيح: -Xjspecify-annotations=strict (هذا هو الإعداد التلقائي بدءًا من الإصدار 2.1.0 من برنامج تجميع Kotlin) (Ia8420، b/326456246)
  • تمت إضافة دالّتَي الإضافة ‎subscribeAsFlowable إلى ‎:xr:arcore:arcore-rxjava3 ليستخدمهما مطوّرو Java. (Id3e49، b/427277298)

الإصدار ‎1.0.0-alpha04

‫7 مايو 2025

تم طرح androidx.xr.arcore:arcore:1.0.0-alpha04. يتضمّن الإصدار 1.0.0-alpha04 هذه التعديلات.

التغييرات في واجهة برمجة التطبيقات

  • تتطلّب المشاريع التي تم إصدارها باستخدام Kotlin 2.0 استخدام الإصدار 2.0.0 من KGP أو إصدار أحدث. (Idb6b5)
  • تم نقل TrackingState وHandJointType من ARCore إلى Runtime.
  • تم تغيير Hand.State.isActive (boolean) إلى Hand.State.trackingState (androidx.xr.runtime.TrackingState).
  • تعرض الدالة Anchor.load القيمة Anchor.AnchorLoadInvalidUuid إذا كان المعرّف الفريد العالمي (UUID) غير صالح.

الإصدار ‎1.0.0-alpha03

‫26 فبراير 2025

تم إصدار androidx.xr.arcore:arcore:1.0.0-alpha03 بدون أي تغييرات ملحوظة منذ آخر إصدار أولي. يتضمّن الإصدار ‎1.0.0-alpha03 هذه التعديلات.

الإصدار ‎1.0.0-alpha02

‫12 فبراير 2025

تم طرح androidx.xr.arcore:arcore:1.0.0-alpha02. يتضمّن الإصدار ‎1.0.0-alpha02 هذه التعديلات.

الميزات الجديدة

  • تمت إضافة ميزة تتبُّع اليد. استخدِم Hand.left وHand.right للوصول إلى معلومات التتبُّع.
  • واجهات برمجة التطبيقات التي تنشئ علامة ارتساء (Anchor.create وAnchor.load وPlane.createAnchor) تعرض الآن جميعها AnchorCreateResult وتنفّذ AnchorCreateResourcesExhausted بشكل صحيح.

إصلاح الأخطاء

  • لم يعُد Anchor.detach يتسبّب في حدوث عطل فادح بسبب حالة السباق مع سلسلة تعديل الجلسة.
  • ‫Anchor.create أكثر استقرارًا عند تشغيله على محاكي

الإصدار ‎1.0.0-alpha01

‫12 ديسمبر 2024

تم طرح androidx.xr.arcore:arcore-* 1.0.0-alpha01.

ميزات الإصدار الأوّلي

مستوحاة من مكتبة ARCore الحالية، توفّر مكتبة ARCore for Jetpack XR إمكانات لدمج المحتوى الرقمي مع العالم الحقيقي. تتضمّن هذه المكتبة تتبُّع الحركة، والمثبّتات الثابتة، واختبار مؤشر الماوس، وتحديد المستوى باستخدام التصنيف الدلالي (على سبيل المثال، الأرضية والجدران وأسطح الطاولات). يمكنك الاطّلاع على دليل المطوّر لمزيد من المعلومات حول العمل باستخدام ARCore for Jetpack XR.

  • ‫Session: تستخدم حزمة ARCore for Jetpack XR بيئة Jetpack XR Runtime في الخلفية لتشغيل وظائفها. ستستخدم جلسة للتفاعل مع معظم واجهات برمجة التطبيقات في ARCore for Jetpack XR، لذا يُرجى الاطّلاع على مستنداتها.

  • Plane: استخدِم المستويات لفهم العالم من حولك. يحتوي كل سطح على Label يصفه دلاليًا. يمكنك استخدام subscribe لتلقّي إشعارات بشأن أحدث الطائرات التي تم رصدها أو state لتلقّي إشعارات بشأن التغييرات في طائرة معيّنة.

  • Anchor: رابط بين عنصر افتراضي وموقع جغرافي في العالم الحقيقي يمكن إرفاق نقاط الارتساء بموقع جغرافي معيّن في المساحة (باستخدام create) أو Trackable (باستخدام createAnchor).

    • يمكن إعادة استخدام نقاط الارتساء في جلسات متعددة. يمكنك استخدام persist لتخزينها، وgetPersistedAnchorUuids لتعدادها، وload لاستردادها. تأكَّد من unpersist هذه الأجهزة عندما لا تعود قيد الاستخدام.

    • يمكن استخدام نقاط الارتساء بشكل متبادل بين ARCore لـ Jetpack XR وJetpack SceneCore. يمكنك إنشاء AnchorEntity باستخدام نقطة ارتساء، أو إذا كان لديك AnchorEntity حالي، يمكنك استخدام getAnchor لاسترداد نقطة الارتساء الداعمة له.

    • توفير تفاعلات طبيعية للمستخدمين باستخدام hitTest يستخدم hitTest السمة Ray لتحديد المحتوى الذي يتقاطع معه وإنشاء Anchor من ذلك الموقع الجغرافي. ننصحك بإجراء اختبار hitTest من InputEvent.

المشاكل المعروفة

  • قد يحدث تأخير بين استدعاء unpersist وإزالة معرّف UUID الخاص به من النتائج التي يعرضها getPersistedAnchorUuids.

  • لن يتحقّق create من توفّر موارد كافية في النظام لعرض نقاط ارتساء جديدة. قد يؤدي إنشاء عدد كبير جدًا من نقاط الارتكاز إلى تعطُّل التطبيق.

  • لا يمكن حاليًا حفظ نقطة ارتساء تم حفظها وإلغاء حفظها سابقًا.

  • يمكن استخدام الميزة في المحاكي، ولكن قد لا يكون السلوك مستقرًا كما هو الحال عند تشغيلها على جهاز فعلي. على وجه الخصوص، قد يتعذّر إجراء المكالمات إلى create بسبب خطأ في الرموز البرمجية الأصلية، ما يؤدي إلى إنهاء النشاط على الفور.

  • في حالات معيّنة، قد يظهر خطأ RuntimeException عند استدعاء persist مع الرسالة "لم يتم الاحتفاظ بنقطة الارتساء". في هذه الحالات، ستنجح الدالة وسيتم الاحتفاظ بنقطة الارتساء. ننصحك بتضمين طلب persist في مجموعة try كحل بديل.