گزارش‌های خرابی قابل خواندن را در داشبورد Crashlytics دریافت کنید

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

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

اندروید

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

  1. مطمئن شوید که از Crashlytics Unity SDK نسخه 8.6.1 یا جدیدتر استفاده می کنید. آخرین نسخه را دانلود کنید.

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

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

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

    2. (فقط برای برنامه‌هایی که از Android API سطح 30 و بالاتر استفاده می‌کنند) الگوی AndroidManifest.xml برنامه خود را برای غیرفعال کردن Pointer Tagging به‌روزرسانی کنید:

      1. کادر تنظیمات Player Android > Publishing Settings > Build > Custom Main Manifest را علامت بزنید.

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

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

  3. پروژه خود را بسازید و نمادها را آپلود کنید.

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

    1. از کادر گفتگوی Build Settings یکی از موارد زیر را انجام دهید:

      • برای ساخت پروژه خود به یک پروژه Android Studio صادر کنید. یا

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

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

      firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/SYMBOLS
      • FIREBASE_APP_ID : شناسه برنامه Android Firebase شما (نه نام بسته شما)
        ID برنامه اندروید 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 ).

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

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

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

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

      --generator=breakpad

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

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

      --dry-run

      فایل های نماد را تولید می کند اما آنها را آپلود نمی کند

      اگر می خواهید محتوای فایل های ارسال شده را بررسی کنید، این پرچم مفید است.

      --debug اطلاعات رفع اشکال اضافی را ارائه می دهد