دریافت گزارش‌های خرابی خوانا در داشبورد Crashlytics (یونیتی)

انتخاب پلاتفرم: iOS+‎ Android Flutter Unity


‫iOS+ (پلاتفرم‌های Apple)

برای برنامه‌های پلاتفرم Apple که از Crashlytics Unity SDK 8.2.0+ استفاده می‌کنند، افزایه Firebase Unity Editor به‌طور خودکار پروژه Xcode شما را برای بارگذاری نمادها پیکربندی می‌کند. جدیدترین نسخه را بارگیری کنید.

Android

برای برنامه‌های Android، Crashlytics Unity SDK 8.6.1+ به‌طور خودکار شامل گزارش خرابی NDK می‌شود که به Crashlytics اجازه می‌دهد خرابی‌های Unity IL2CPP در Android را به‌طور خودکار گزارش کند. بااین‌حال، برای دیدن ردیابی پشته نمادگذاری‌شده برای خرابی‌های کتابخانه بومی در داشبورد Crashlytics، باید اطلاعات نماد را در زمان ساخت بااستفاده از Firebase CLI بارگذاری کنید.

  1. مطمئن شوید که از Crashlytics Unity SDK v8.6.1 یا نسخه‌های جدیدتر استفاده می‌کنید. جدیدترین نسخه را بارگیری کنید.

  2. محیط و پروژه خود را برای بارگذاری نماد تنظیم کنید:

    1. دستورالعمل‌های نصب Firebase CLI را دنبال کنید.

      اگر قبلاً CLI را نصب کرده‌اید، حتماً آن را به جدیدترین نسخه به‌روزرسانی کنید.

    2. (فقط برای برنامه‌هایی که از Android API سطح ۳۰ و بالاتر استفاده می‌کنند) برای غیرفعال کردن «برچسب‌گذاری اشاره‌گر»، AndroidManifest.xml الگوی برنامه‌تان را به‌روز کنید:

      1. کادر تنظیمات پخش‌کننده Android > تنظیمات انتشار > ساخت > مانیفست اصلی سفارشی را علامت بزنید.

      2. الگوی مانیفست موجود در Assets/Plugins/Android/AndroidManifest.xml را باز کنید.

      3. (فقط برای برنامه‌هایی که از نسخه کیت توسعه نرم‌افزار قبل‌از ۸.۸.۰ استفاده می‌کنند) ویژگی زیر را به برچسب برنامه اضافه کنید: <application android:allowNativeHeapPointerTagging="false" ... />

  3. پروژه‌تان را بسازید و نمادها را بارگذاری کنید.

    هر بار که نسخه ساختاری انتشار یا هر ساختاری را که می‌خواهید ردیابی پشته نمادین‌شده آن را در داشبورد Crashlytics ببینید ایجاد می‌کنید، این مراحل را تکمیل کنید.

    1. از کادر گفتگوی تنظیمات ساخت، یکی از کارهای زیر را انجام دهید:

      • برای ساختن پروژه، به پروژه «استودیو Android» صادر کنید؛ یا

      • فایل APK خود را مستقیماً از «ویرایشگر Unity» بسازید.
        قبل‌از ساختن، مطمئن شوید که چارگوش انتخاب Create symbols.zip در کادر گفتگوی تنظیمات ساخت علامت زده شده باشد.

    2. پس‌از اتمام ساخت، فایل نماد سازگار با Crashlytics تولید کنید و با اجرای دستور CLI Firebase زیر، آن را در سرورهای Firebase بارگذاری کنید:

      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: مسیر فایل نماد تولیدشده توسط CLI

        • به پروژه Android Studio صادر شد — PATH/TO/SYMBOLS دایرکتوری unityLibrary/symbols است، که پس‌از ساختن برنامه ازطریق Gradle یا Android Studio، در ریشه پروژه صادرشده ایجاد می‌شود.

        • فایل APK مستقیماً از داخل Unity ساخته شده است — PATH/TO/SYMBOLS مسیر فایل نماد فشرده‌شده‌ای است که پس‌از تکمیل ساخت در پوشه ریشه پروژه تولید شده است (برای نمونه: myproject/myapp-1.0-v100.symbols.zip).

      مشاهده گزینه‌های پیشرفته برای استفاده از فرمان CLI Firebase برای تولید و بارگذاری فایل نماد

      پرچم شرح
      --generator=csym

      به‌جای مولد پیش‌فرض Breakpad، از مولد فایل نماد cSYM قدیمی استفاده می‌کند

      استفاده از آن توصیه نمی‌شود. توصیه می‌کنیم از مولد فایل نماد Breakpad پیش‌فرض استفاده کنید.

      --generator=breakpad

      از تولیدکننده فایل نماد Breakpad استفاده می‌کند

      توجه داشته باشید که پیش‌فرض برای تولید فایل نماد Breakpad است. فقط درصورتی از این پرچم استفاده کنید که symbolGenerator { csym() } را در پیکربندی ساخت خود اضافه کرده باشید و بخواهید آن را ملغی کنید تا به‌جای آن از Breakpad استفاده شود.

      --dry-run

      فایل‌های نماد را تولید می‌کند اما آن‌ها را بارگذاری نمی‌کند

      این پرچم زمانی مفید است که بخواهید محتوای فایل‌های ارسالی را بررسی کنید.

      --debug اطلاعات اشکال‌زدایی بیشتری ارائه می‌دهد