รับรายงานข้อขัดข้องที่อ่านได้ในแดชบอร์ด Crashlytics (Unity)

เลือกแพลตฟอร์ม: 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 ได้โดยอัตโนมัติ อย่างไรก็ตาม หากต้องการดู Stack Trace ที่มีการแทนที่ด้วยสัญลักษณ์สำหรับไลบรารีแบบเนทีฟข้อขัดข้องในแดชบอร์ด Crashlytics คุณต้องอัปโหลดข้อมูลสัญลักษณ์ในเวลาบิลด์โดยใช้ CLI Firebase

  1. ตรวจสอบว่าคุณใช้ Crashlytics Unity SDK v8.6.1 ขึ้นไป ดาวน์โหลดเวอร์ชันล่าสุด

  2. ตั้งค่าสภาพแวดล้อมและโปรเจ็กต์สำหรับการอัปโหลดสัญลักษณ์โดยทำดังนี้

    1. ทำตามวิธีการเพื่อ ติดตั้ง Firebase CLI

      หากติดตั้ง CLI ไว้แล้ว โปรด อัปเดตเป็นเวอร์ชันล่าสุด

      Cloud Shell
    2. (เฉพาะสำหรับแอปที่ใช้ Android API ระดับ 30 ขึ้นไป) อัปเดตเทมเพลต AndroidManifest.xml ของแอปเพื่อปิดใช้การติดแท็กตัวชี้โดยทำดังนี้

      1. เลือกช่องทำเครื่องหมายสำหรับการตั้งค่าเครื่องเล่น Android > การตั้งค่าการเผยแพร่ > สร้าง > ไฟล์ Manifest หลักที่กำหนดเอง

      2. เปิดเทมเพลตไฟล์ Manifest ที่อยู่ใน Assets/Plugins/Android/AndroidManifest.xml

      3. (เฉพาะสำหรับแอปที่ใช้ SDK เวอร์ชันก่อน 8.8.0) เพิ่มแอตทริบิวต์ต่อไปนี้ลงในแท็กแอปพลิเคชัน: <application android:allowNativeHeapPointerTagging="false" ... />

  3. สร้างโปรเจ็กต์และอัปโหลดสัญลักษณ์

    ทำตามขั้นตอนเหล่านี้ทุกครั้งที่สร้างบิลด์รุ่นที่เผยแพร่หรือบิลด์ใดก็ตาม ที่คุณต้องการดู Stack Trace ที่มีสัญลักษณ์ใน Crashlytics แดชบอร์ด

    1. จากกล่องโต้ตอบ Build Settings ให้ทำอย่างใดอย่างหนึ่งต่อไปนี้

      • ส่งออกไปยังโปรเจ็กต์ Android Studio เพื่อสร้างโปรเจ็กต์ หรือ

      • สร้าง APK จาก Unity Editor โดยตรง
        ก่อนสร้าง ให้ตรวจสอบว่าได้เลือกช่องทำเครื่องหมายสร้าง symbols.zip ในกล่องโต้ตอบ Build Settings

    2. เมื่อบิลด์เสร็จแล้ว ให้สร้างไฟล์สัญลักษณ์ที่เข้ากันได้กับ Crashlytics แล้วอัปโหลดไปยังเซิร์ฟเวอร์ Firebase โดยเรียกใช้คำสั่ง Firebase CLI ต่อไปนี้

      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: เส้นทางไปยังไฟล์สัญลักษณ์ที่สร้างโดย 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 ให้ข้อมูลการแก้ไขข้อบกพร่องเพิ่มเติม