Crashlytics डैशबोर्ड में जाकर, क्रैश रिपोर्ट आसानी से पढ़ी जा सकती हैं


iOS+ (Apple के प्लैटफ़ॉर्म)

Crashlytics Unity SDK 8.2.0 और उसके बाद के वर्शन का इस्तेमाल करने वाले Apple प्लैटफ़ॉर्म के ऐप्लिकेशन के लिए, Firebase Unity Editor प्लग इन आपके Xcode प्रोजेक्ट को अपने-आप कॉन्फ़िगर करता है, ताकि सिंबल अपलोड किए जा सकें. नया वर्शन डाउनलोड करें.

Android

Android ऐप्लिकेशन के लिए, Crashlytics Unity SDK 8.6.1 और इसके बाद के वर्शन में, NDK क्रैश रिपोर्टिंग अपने-आप शामिल हो जाती है. इससे Crashlytics को Android पर UnityIL2CPP क्रैश की अपने-आप रिपोर्ट करने की सुविधा मिलती है. हालांकि, Crashlytics डैशबोर्ड में नेटिव लाइब्रेरी के क्रैश के लिए, सिंबल वाले स्टैक ट्रेस देखने के लिए, आपको Firebase सीएलआई का इस्तेमाल करके, बिल्ड के समय सिंबल की जानकारी अपलोड करनी होगी.

  1. पक्का करें कि आपने Crashlytics Unity SDK टूल का 8.6.1 या उसके बाद का वर्शन इस्तेमाल किया हो. नया वर्शन डाउनलोड करें.

  2. सिंबल अपलोड करने के लिए, अपना एनवायरमेंट और प्रोजेक्ट सेट अप करें:

    1. Firebase सीएलआई इंस्टॉल करने के लिए निर्देशों का पालन करें.

      अगर आपने पहले से ही सीएलआई इंस्टॉल किया है, तो पक्का करें कि आपने इसे अपने नए वर्शन पर अपडेट कर लिया हो.

    2. (सिर्फ़ Android एपीआई लेवल 30 और उसके बाद के वर्शन का इस्तेमाल करने वाले ऐप्लिकेशन के लिए) पॉइंटर टैगिंग की सुविधा बंद करने के लिए, अपने ऐप्लिकेशन के AndroidManifest.xml टेंप्लेट को अपडेट करें:

      1. Android Player की सेटिंग > पब्लिश करने की सेटिंग > बिल्ड > कस्टम मुख्य मेनिफ़ेस्ट के लिए बॉक्स को चुनें.

      2. Assets/Plugins/Android/AndroidManifest.xml पर मौजूद मेनिफ़ेस्ट टेंप्लेट खोलें.

      3. (सिर्फ़ उन ऐप्लिकेशन के लिए जो 8.8.0 से पहले के SDK टूल के वर्शन का इस्तेमाल करते हैं) ऐप्लिकेशन टैग में यह एट्रिब्यूट जोड़ें: <application android:allowNativeHeapPointerTagging="false" ... />

  3. अपना प्रोजेक्ट बनाएं और सिंबल अपलोड करें.

    हर बार रिलीज़ बाइल्ड या ऐसा कोई बाइल्ड बनाने पर, ये चरण पूरे करें जिसके लिए आपको Firebase कंसोल में, स्टैक ट्रेस को सिंबल के तौर पर देखना है.

    1. बिल्ड सेटिंग डायलॉग में जाकर, इनमें से कोई एक काम करें:

      • अपना प्रोजेक्ट बनाने के लिए, Android Studio प्रोजेक्ट में एक्सपोर्ट करें या

      • सीधे Unity Editor से अपना APK बनाएं.
        बिल्ड करने से पहले, पक्का करें कि बिल्ड सेटिंग डायलॉग में, symbols.zip बनाएं चेकबॉक्स पर सही का निशान लगा हो.

    2. बिल्ड पूरा होने के बाद, Crashlytics के साथ काम करने वाली सिंबल फ़ाइल जनरेट करें. इसके बाद, Firebase CLI कमांड चलाकर, उसे Firebase सर्वर पर अपलोड करें:

      firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/SYMBOLS
      • FIREBASE_APP_ID: आपका Firebase Android ऐप्लिकेशन आईडी (पैकेज का नाम नहीं)
        Firebase Android ऐप्लिकेशन आईडी का उदाहरण: 1:567383003300:android:17104a2ced0c9b9b

      • PATH/TO/SYMBOLS: सीएलआई से जनरेट की गई सिंबल फ़ाइल का पाथ

        • Android Studio प्रोजेक्ट में एक्सपोर्ट किया गया — PATH/TO/SYMBOLS, unityLibrary/symbols डायरेक्ट्री है. यह डायरेक्ट्री, Gradle या Android Studio की मदद से ऐप्लिकेशन बनाने के बाद, एक्सपोर्ट किए गए प्रोजेक्ट रूट में बनाई जाती है.

        • APK को सीधे Unity से बनाया गया — PATH/TO/SYMBOLS, प्रोजेक्ट की रूट डायरेक्ट्री में जनरेट की गई, ज़िप की गई सिंबल फ़ाइल का पाथ है. यह तब जनरेट होती है, जब आपका बिल्ड पूरा हो जाता है (उदाहरण के लिए: myproject/myapp-1.0-v100.symbols.zip).

      सिंबल फ़ाइल जनरेट करने और अपलोड करने के लिए, Firebase सीएलआई कमांड का इस्तेमाल करने के बेहतर विकल्प देखना

      फ़्लैग करें जानकारी
      --generator=csym

      डिफ़ॉल्ट Breakpad जनरेटर के बजाय, लेगसी cSYM सिंबल फ़ाइल जनरेटर का इस्तेमाल करता है

      इसका इस्तेमाल करने का सुझाव नहीं दिया जाता. हमारा सुझाव है कि आप डिफ़ॉल्ट Breakpad सिंबल फ़ाइल जनरेटर का इस्तेमाल करें.

      --generator=breakpad

      Breakpad सिंबल फ़ाइल जनरेटर का इस्तेमाल करता है

      ध्यान दें कि सिंबल फ़ाइल जनरेट करने के लिए, डिफ़ॉल्ट रूप से Breakpad का इस्तेमाल किया जाता है. इस फ़्लैग का इस्तेमाल सिर्फ़ तब करें, जब आपने अपने बिल्ड कॉन्फ़िगरेशन में symbolGenerator { csym() } जोड़ा हो और आपको Breakpad का इस्तेमाल करने के लिए, इसे बदलना हो.

      --dry-run

      सिंबल फ़ाइलें जनरेट करता है, लेकिन उन्हें अपलोड नहीं करता

      यह फ़्लैग तब काम आता है, जब आपको भेजी गई फ़ाइलों के कॉन्टेंट की जांच करनी हो.

      --debug डीबग करने के बारे में ज़्यादा जानकारी देता है