الحصول على تقارير أعطال قابلة للقراءة في لوحة بيانات Crashlytics

iOS+ (أنظمة Apple الأساسية)

بالنسبة إلى تطبيقات النظام الأساسي من Apple التي تستخدم Crashlytics Unity SDK 8.2.0 أو الإصدارات الأحدث، يعمل المكوّن الإضافي Firebase Unity Editor على تهيئة مشروع Xcode تلقائيًا لتحميل الرموز. تنزيل أحدث إصدار:

Android

بالنسبة إلى تطبيقات Android، يتضمّن الإصدار 8.6.1 من حزمة تطوير البرامج (SDK) في Crashlytics Unity والإصدارات الأحدث منه ميزة إعداد تقارير الأعطال NDK، التي تسمح لتطبيق Crashlytics تلقائيًا بالإبلاغ عن أعطال Unity IL2CPP على نظام التشغيل Android. ومع ذلك، للاطّلاع على عمليات تتبُّع تسلسُل استدعاء الدوال البرمجية التي تم ترميزها لحالات تعطُّل المكتبة الأصلية في لوحة بيانات Crashlytics، يجب تحميل معلومات الرموز في وقت الإصدار باستخدام واجهة سطر الأوامر في Firebase.

  1. تأكّد من استخدام الإصدار 8.6.1 من حزمة تطوير البرامج (SDK) لمنصة Crashlytics Unity أو إصدار أحدث. تنزيل أحدث إصدار:

  2. إعداد بيئتك ومشروعك لتحميل الرموز:

    1. اتّبِع التعليمات لتثبيت واجهة سطر الأوامر في Firebase.

      إذا سبق لك تثبيت واجهة سطر الأوامر، تأكَّد من التحديث إلى آخر إصدار له.

    2. (فقط للتطبيقات التي تستخدم المستوى 30 أو أعلى من واجهة برمجة تطبيقات Android) عدِّل نموذج AndroidManifest.xml الخاص بتطبيقك لإيقاف ميزة "وضع علامات المؤشر":

      1. ضع علامة في المربع بجانب إعدادات مشغّل Android > إعدادات النشر > إنشاء > البيان الرئيسي المخصَّص.

      2. افتح نموذج البيان المتوفّر على Assets/Plugins/Android/AndroidManifest.xml.

      3. (فقط للتطبيقات التي تستخدم إصدار حزمة SDK قبل 8.8.0) أضِف السمة التالية إلى علامة التطبيق: <application android:allowNativeHeapPointerTagging="false" ... />

  3. أنشئ مشروعك وحمِّل الرموز.

    أكمِل هذه الخطوات في كل مرة تنشئ فيها إصدارًا أو أي إصدار تريد الاطّلاع على عمليات ترميز تتبُّع تسلسل استدعاء الدوال البرمجية له في وحدة تحكُّم Firebase.

    1. من مربع الحوار إعدادات التصميم، نفِّذ أحد الإجراءات التالية:

      • التصدير إلى مشروع على "استوديو Android" لإنشاء مشروعك

      • يمكنك إنشاء حِزمة APK مباشرةً من خلال Unity Editor.
        قبل إنشاء الرمز، عليك التأكّد من وضع علامة في مربّع الاختيار إنشاء symbols.zip في مربّع الحوار إعدادات التصميم.

    2. بعد اكتمال عملية الإنشاء، يمكنك إنشاء ملف رموز متوافق مع Crashlytics وتحميله إلى خوادم Firebase من خلال تشغيل أمر Firebase CLI التالي:

      firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/SYMBOLS
      • FIREBASE_APP_ID: رقم تعريف تطبيق Android في Firebase (وليس اسم الحزمة)
        مثال على رقم تعريف تطبيق Android في Firebase: 1:567383003300:android:17104a2ced0c9b9b

      • PATH/TO/SYMBOLS: المسار إلى ملف الرموز الذي أنشأه واجهة سطر الأوامر

        • تم التصدير إلى مشروع على "استوديو Android": "PATH/TO/SYMBOLS" هو دليل unityLibrary/symbols، ويتم إنشاؤه في جذر المشروع الذي تم تصديره بعد إنشاء التطبيق عبر Gradle أو "استوديو Android".

        • يمكنك إنشاء حزمة APK مباشرةً من داخل Unity. إنّ المسار PATH/TO/SYMBOLS هو مسار ملف الرموز المضغوط الذي تم إنشاؤه في الدليل الجذري للمشروع عند انتهاء التصميم (على سبيل المثال: myproject/myapp-1.0-v100.symbols.zip).

      اطّلِع على الخيارات المتقدّمة لاستخدام أمر Firebase CLI لإنشاء ملفات الرموز وتحميلها

      الإبلاغ الوصف
      --generator=csym

      تستخدم منشئ ملفات رمز cSYM القديم بدلاً من المنشئ التلقائي لأداة Breakpad

      لا ننصح باستخدامها. وننصحك باستخدام أداة إنشاء الملفات التلقائية التي تستخدم رمز لوحة الإيقاف.

      --generator=breakpad

      لاستخدام أداة إنشاء ملفات رموز Breakpad

      يُرجى العِلم أنّ الطريقة التلقائية لإنشاء ملفات الرموز هي Breakpad. لا تستخدِم هذه العلامة إلا إذا كنت قد أضفت symbolGenerator { csym() } في إعدادات تصميمك وأردت إلغاءها لاستخدام لوحة الإيقاف بدلاً من ذلك.

      --dry-run

      إنشاء ملفات الرموز ولكن لا يتم تحميلها

      وهذه العلامة مفيدة إذا كنت تريد فحص محتوى الملفات التي يتم إرسالها.

      --debug توفر معلومات إضافية حول تصحيح الأخطاء