‫ARCore for Jetpack XR

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

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

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

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

Groovy

dependencies {
    implementation "androidx.xr.arcore:arcore:1.0.0-rc02"
}

Kotlin

dependencies {
    implementation("androidx.xr.arcore:arcore:1.0.0-rc02")
}

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

الملاحظات

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

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

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

الإصدار 1.0

الإصدار ‎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)
  • تمت إضافة حمولة زائدة قابلة للنقل مع المَعلمة movePolicy وإيقاف transformingMovable وmovable نهائيًا (Ic88c1، b/481781189)
  • تمت إزالة TrackingState.TRACKING_DEGRADED من مساحة واجهة برمجة التطبيقات العامة، وتمت بدلاً من ذلك مطابقة حالات وقت التشغيل المخفَّضة مع PAUSED. عدِّل TrackingState لاستخدام التعدادات بدلاً من قيم الأعداد الصحيحة لتحويل السلسلة والتحويل في وقت التشغيل. (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، يستخدم فقط وحدة القياس بالقصور الذاتي ونظام تحديد المواقع العالمي (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 بدلاً من الموضع والإزاحة ونوع الإزاحة والمحاذاة والارتفاع. تمت أيضًا إزالة المَعلمة shouldRenderInNonSpatial. إذا كان المطوّر لا يريد عرض أداة التحكّم الدائري في وضع غير مكاني، عليه تضمين أداة التحكّم الدائري في عبارة 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 لتتبُّع 3 درجات من الحرية، كما تمّت إضافة TRACKING_DEGRADED إلى TrackingState. (Ie661c، b/445466590)
  • تم إيقاف GroupEntity نهائيًا. للحصول على عنصر Entity يتضمّن وظائف العنصر الأساسية فقط، استدعِ 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، ما يوفّر Flow تفاعليًا لرصد حالة ميلان الجهاز (للأعلى/للأسفل) بشكل ثابت مع عرض مستوى تقدّم الانتقال. (Ic269f، b/448152779)
  • تستخدم حزمة ARCore for Jetpack XR الآن آلية تسجيل بيانات وقت التشغيل في الواقع الممتد. يُرجى الاطّلاع على 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 API للتحقّق من توفّر خدمة تحديد المواقع المرئية (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)

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

  • تمت إعادة تسمية قيم Config *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 for Jetpack XR تصميمها من مكتبة ARCore الحالية، وتوفّر إمكانات لدمج المحتوى الرقمي مع العالم الحقيقي. تتضمّن هذه المكتبة تتبُّع الحركة، وعناصر ثابتة دائمة، واختبارات تحديد المواقع، وتحديد الأسطح باستخدام التصنيف الدلالي (مثل الأرضيات والجدران وأسطح الطاولات). يمكنك الاطّلاع على دليل المطوّرين لمزيد من المعلومات حول استخدام ARCore for Jetpack XR.

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

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

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

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

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

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

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

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

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

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

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

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