Crashlytics डैशबोर्ड (Unity) में आसानी से पढ़ी जा सकने वाली क्रैश रिपोर्ट पाना

प्लैटफ़ॉर्म चुनें: iOS+ Android Flutter Unity


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

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

Android

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

  1. पक्का करें कि आपके पास Crashlytics Unity SDK v8.6.1 या इसके बाद का वर्शन हो. सबसे नया वर्शन डाउनलोड करें.

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

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

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

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

      1. Android Player Settings > Publishing Settings > Build > Custom Main Manifest के लिए बॉक्स को चुनें.

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

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

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

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

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

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

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

    2. बिल्ड पूरा होने के बाद, Crashlytics के साथ काम करने वाली सिंबल फ़ाइल जनरेट करें. इसके बाद, Firebase सीएलआई कमांड चलाकर, उसे 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 डीबग करने की ज़्यादा जानकारी देता है