اعتبارات الأداء

لإنشاء تجارب مقنعة لمستخدمي الواقع المعزّز، من المهم أن تكون الهواتف التي تستخدم الواقع المعزّز تطبيقك بشكل جيد.

تأكَّد من أنّ تطبيقك:

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

أفضل الممارسات المتعلقة بالأداء

لإنشاء تجارب الواقع المعزّز أكثر جاذبية، يُرجى التصميم باستخدام أفضل ما يلي: الممارسات في الاعتبار.

استخدام الإعلانات الثابتة لتحسين أداء التتبُّع

ورغم إمكانية وضع المحتوى الثلاثي الأبعاد باستخدام إحداثيات فضاء العالم، استخدِم دائمًا علامة ارتساء كلما أمكن ذلك. تضمن ARCore أن تظهر علامات الارتساء بشكل ثابت بالنسبة إلى العالم، على الرغم من تتغير الإحداثيات الأساسية للفضاء العالمي وقد تنتقل بمرور الوقت كلما احتجت إلى ARCore إلى تحديث فهمه للعالم.

في بعض الأحيان، ستظهر الكائنات الافتراضية غير المرتبطة بمرساة ولن تظهر مستقرة بالنسبة للبيئة. هذا يمكن أن تجربة الواقع المعزّز أقل جاذبية للمستخدمين.

مراعاة خصائص الأداء الخاصة بالجهاز

تشمل الأجهزة المتوافقة مع ARCore مجموعة واسعة من خصائص الأجهزة والأداء. يمكن أن يختلف أداء الجهاز للأسباب التالية:

  • وحدة المعالجة المركزية (CPU)/وحدة معالجة الرسومات للجهاز، سرعة الساعة
  • الذاكرة والنطاق الترددي المتاحان
  • جودة الكاميرا/أداة استشعار IMU
  • الاختلافات الأخرى في الأجهزة
  • برامج تشغيل أنظمة التشغيل والأجهزة

ننصحك باختبار تطبيقك على فئات مختلفة من الأجهزة التي تمثل الأجهزة التي سيستخدمها المستخدمون.

إيقاف الميزات التي تستهلك الكثير من وحدة المعالجة المركزية (CPU) عند عدم استخدامها

تزيد بعض ميزات ARCore من استخدام وحدة المعالجة المركزية (CPU) عند تفعيلها. ضع في اعتبارك إيقاف هذه الميزات عندما لا تتطلّب تجربة الواقع المعزّز معهم. سيؤدي ذلك إلى إتاحة دورات إضافية لوحدة المعالجة المركزية (CPU) لتطبيقك، وتحسين الأداء الحراري وعمر البطارية

في الوقت الحالي، يزداد استخدام وحدة المعالجة المركزية ARCore عند استخدام Instant Placement و/أو تم تفعيل Augmented Images للجلسة الحالية. متابعة هذه إرشادات حول زيادة كفاءة استخدام وحدة المعالجة المركزية (CPU):

  • يجب إيقاف "Instant Placement" بعد إكمال عملية التتبُّع بالكامل. التأسيس. يمكن إيقاف الميزة في إعدادات الجلسة.

  • يجب إيقاف Augmented Images عندما لا تكون الميزة مطلوبة لتجربة الواقع المعزّز. لإيقاف ميزة "الصور المعزّزة"، عليك ضبط قاعدة بيانات "صور مُعزّزة" فارغة على null أو في إعدادات الجلسة.

مراقبة درجات الحرارة في الجهاز

أثناء التطوير واختبار تأكيد الجودة، يمكنك استخدام واجهات برمجة التطبيقات الحرارية في Android لمراقبة وتتبُّع أداء تطبيقك على الجهاز

احرص على استخدام إصدار إنتاجي لتطبيقك (وليس تطويرًا أو qa لتطبيقك الذي قد يكون له أداء وقت تشغيل مختلف وسماتها الشخصية.

تحديد حالات نقص وحدة المعالجة المركزية في ARCore

عندما تكون جلسة ARCore نشطة، يجب أن يشارك تطبيقك موارد محدودة لوحدة المعالجة المركزية ووحدة معالجة الرسومات في الأجهزة الجوّالة مع ARCore. يمكن للتطبيقات المرتبطة بوحدة المعالجة المركزية (CPU) التنافس مع موارد وحدة المعالجة المركزية (CPU). مطلوبة لميزة تتبُّع الحركة.

للتحقق من أن ARCore الأقلمة والربط المتزامنة قدرة (SLAM) على العمل بشكل طبيعي، تحقق من أن "تردد VIO منخفض" رسالة لا يظهر ضِمن سجلّات جهاز Android:

adb logcat | grep 'VIO frequency low'

تجنُّب فقدان وحدة المعالجة المركزية (CPU) من خلال ARCore

عندما تكون جلسة ARCore نشطة، يجب أن يشارك تطبيقك موارد وحدة المعالجة المركزية ووحدة معالجة الرسومات المحدودَين في الأجهزة الجوّالة مع ARCore. يمكن للتطبيقات المرتبطة بوحدة المعالجة المركزية (CPU) التنافس مع موارد وحدة المعالجة المركزية (CPU). مطلوبة لميزة تتبُّع الحركة.

إنشاء قواعد بيانات "الصور المعزَّزة" مسبقًا

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

الحدّ من عدد أحداث بث الكاميرا المطلوبة

عند استخدام كاميرا Java المشتركة، يمكن للتطبيقات إجراء ما يلي: طلب عمليات بث إضافية للصور على وحدة المعالجة المركزية (CPU) أو وحدة معالجة الرسومات (GPU)