تسجيل مكالمات ARCore

عند تحديد مشاكل سلوك بيئة التشغيل والأداء على جهاز Android وحلّها يمكنك تسجيل طلبات البيانات من واجهة برمجة التطبيقات ARCore سجلّ جهاز Android:

عند تفعيل تسجيل المكالمات، ستسجّل ARCore جميع طلبات البيانات من واجهة برمجة التطبيقات باستخدام C API الخاص بها. المستخدم، بغض النظر عن حزمة SDK التي تم إنشاء التطبيق باستخدامها يمكن لجميع أسماء واجهات برمجة التطبيقات C API يمكن العثور عليها في المستندات المرجعية لواجهة برمجة التطبيقات C API إلى جانب معاملاتها وقيمها الناتجة.

تفعيل تسجيل طلبات البيانات من واجهة برمجة التطبيقات

طلبات البيانات من واجهة برمجة التطبيقات ARCore التي لا تقبل مَعلمات ArSession* مثل *_destroy ولا يتم تسجيل الدوال *_release.

اتّبِع الخطوات التالية لتفعيل تسجيل طلبات البيانات من واجهة برمجة التطبيقات ARCore.

  1. تأكَّد من تثبيت الإصدار 1.23 من "خدمات Google Play للواقع المعزّز" (ARCore) أو إصدار أحدث:

    • على نظام التشغيل Windows، شغِّل adb shell pm dump com.google.ar.core | findstr /i "packages: versionName".
    • على نظام التشغيل macOS، يُرجى تشغيل "adb shell pm dump com.google.ar.core | egrep -i versionName\|packages:".
  2. افتح تجربة الواقع المعزّز في تطبيقك لتكون جلسة ARCore نشطة. الجري. يجب أن يكون تطبيقك في وضع الواقع المعزّز لتلقّي البث الذي يُفعّل التسجيل يجب أن تكون صور معاينة كاميرا الواقع المعزّز مرئية على الجهاز. الشاشة.

  3. استخدِم أمر بث مدير النشاط التالي لتفعيل تسجيل المكالمات: لتطبيقك.

    # Enables ARCore call logging and saves a setting to your app's
    # Android Shared Preferences, so that call logging remains enabled in
    # subsequent ARCore sessions.
    
    # Your app must have an actively running ARCore session to receive the broadcast.
    adb shell am broadcast -a com.google.ar.core.ENABLE_API_CALL_LOGGING
    

إيقاف تسجيل طلبات البيانات من واجهة برمجة التطبيقات

اتّبِع الخطوات التالية لإيقاف تسجيل طلبات البيانات من واجهة برمجة التطبيقات ARCore.

  1. افتح تجربة الواقع المعزّز في تطبيقك لتكون جلسة ARCore نشطة. الجري. يجب أن يكون تطبيقك في وضع الواقع المعزّز لتلقّي البث الذي يتم إيقافه. التسجيل يجب أن تكون صور معاينة كاميرا الواقع المعزّز مرئية على الجهاز. الشاشة.

  2. يمكنك استخدام أمر بث مدير النشاط التالي لإيقاف تسجيل المكالمات. عن تطبيقك:

    # Disables ARCore call logging and saves a setting to your app's
    # Android Shared Preferences, so that call logging remains disabled in
    # subsequent ARCore sessions.
    
    # Your app must have an actively running ARCore session to receive the broadcast.
    adb shell am broadcast -a com.google.ar.core.DISABLE_API_CALL_LOGGING
    

عرض الناتج

يستخدم ARCore العلامة ARCore-Api لجميع نتائج التسجيل في ARCore API. يمكنك استخدام التالي لتصفية تلك الطلبات فقط.

# Currently, ARCore only logs API calls that take an `ArSession*` argument.
# Functions that do not take session parameters such as `*_destroy` and `*_release` are not logged.
# -s is equivalent to the filter expression '*:S', which sets priority for all tags to silent.

adb logcat -s ARCore-Api

يحدّ معدّل ARCore من الإخراج لتقليل السجلّات غير المرغوب فيها. يجمع السجلّ الذي تم تخطّيه الرسائل في رسالة سجل واحدة.

مثال على مخرجات رسائل السجلّ التي تم تخطّيها:

D ARCore-Api: ArFrame_create(<ptr>)
D ARCore-Api: ArSession_update(<ptr>) -> AR_SUCCESS
D ARCore-Api: ArFrame_acquireCamera(<ptr>, <ptr>)
D ARCore-Api: ArFrame_getDisplayGeometryChanged(<ptr>, <ptr>)
D ARCore-Api: ArCamera_getTrackingFailureReason(<ptr>, <ptr>)
D ARCore-Api: ArFrame_getTimestamp(<ptr>, <ptr>)
D ARCore-Api: ArSession_setDisplayGeometry(0, 1080, 2195)
D ARCore-Api: ArFrame_create(<ptr>) (suppressing for 10s)
D ARCore-Api: ArSession_update(<ptr>) -> AR_SUCCESS (suppressing for 10s)
D ARCore-Api: ArFrame_acquireCamera(<ptr>, <ptr>) (suppressing for 10s)
D ARCore-Api: ArFrame_getDisplayGeometryChanged(<ptr>, <ptr>) (suppressing for 10s)
D ARCore-Api: ArCamera_getTrackingFailureReason(<ptr>, <ptr>) (suppressing for 10s)
D ARCore-Api: ArFrame_getTimestamp(<ptr>, <ptr>) (suppressing for 10s)
D ARCore-Api: ArSession_setDisplayGeometry(0, 1080, 2195) (suppressing for 10s)