เริ่มต้นใช้งาน Crashlytics สำหรับ Android

เลือกแพลตฟอร์ม iOS+ Android Android NDK Flutter Unity


คู่มือนี้อธิบายวิธีเริ่มต้นใช้งาน Firebase Crashlytics ในแอป Android

หลังจากตั้งค่า SDK ของ Firebase Crashlytics ในแอปแล้ว คุณจะได้รับรายงานข้อขัดข้องที่ครอบคลุมในคอนโซล Firebase เมื่อใช้ Crashlytics สำหรับ Android คุณจะได้รับรายงานข้อขัดข้อง ข้อผิดพลาดที่ไม่ร้ายแรง และข้อผิดพลาด "แอปพลิเคชันไม่ตอบสนอง" (ANR)

หากต้องการความช่วยเหลือจาก AI ให้คัดลอกพรอมต์ด้านล่างลงในตัวแทนการเขียนโค้ด AI (เช่น Gemini ใน Android Studio, Antigravity, Claude Code, Codex และ Cursor) คุณสามารถปรับแต่งพรอมต์และปรับปรุงซ้ำๆ กับ Agent ได้ ดูข้อมูลการติดตั้งโดยละเอียดได้ที่ทักษะเอเจนต์ Firebase

Help me use Firebase in my app.
1. Make sure that **Firebase agent skills** are installed and updated. For Claude Code, Codex, or Cursor agents, help me install the Firebase plugin. For other agents, run `npx skills add firebase/agent-skills`. Always try to use **Firebase agent skills** for Firebase-related tasks.
2. Help me set up Firebase Crashlytics for my app.

ก่อนเริ่มต้น

การตั้งค่า Crashlytics ต้องดำเนินการทั้งในคอนโซล Firebase และ IDE (เช่น การเพิ่มไฟล์การกำหนดค่า Firebase และ SDK ของ Crashlytics) หากต้องการตั้งค่าให้เสร็จสมบูรณ์ คุณจะต้องบังคับให้เกิดข้อขัดข้องเพื่อทดสอบการส่งรายงานข้อขัดข้องฉบับแรกไปยัง Firebase

  1. เพิ่ม Firebase ลงในโปรเจ็กต์ Android หากยังไม่ได้เพิ่ม หากไม่มีแอป Android คุณสามารถดาวน์โหลดแอปตัวอย่างได้

  2. แนะนำ: หากต้องการรับบันทึกเบรดครัมบ์โดยอัตโนมัติเพื่อทำความเข้าใจการกระทำของผู้ใช้ที่นำไปสู่เหตุการณ์ข้อขัดข้อง ข้อผิดพลาดที่ไม่ร้ายแรง หรือ ANR คุณต้องเปิดใช้ Google Analytics ในโปรเจ็กต์ Firebase

    • หากจะสร้างโปรเจ็กต์ Firebase ใหม่ ให้เปิดใช้ Google Analytics ในระหว่างขั้นตอนการสร้างโปรเจ็กต์

    • หากใช้โปรเจ็กต์ Firebase เดิมที่ไม่ได้เปิดใช้ Google Analytics คุณสามารถเปิดใช้ได้ในหน้า การตั้งค่า > การผสานรวมของคอนโซล Firebase

  3. ตรวจสอบว่าแอปของคุณมีเวอร์ชันที่จำเป็นขั้นต่ำดังต่อไปนี้

    • Gradle 8.0
    • ปลั๊กอิน Android Gradle 8.1.0
    • ปลั๊กอิน Gradle สำหรับบริการของ Google 4.4.1

ขั้นตอนที่ 1: เพิ่ม SDK ของ Crashlytics ลงในแอป

ในไฟล์ Gradle ของโมดูล (ระดับแอป) (โดยปกติคือ <project>/<app-module>/build.gradle.kts หรือ <project>/<app-module>/build.gradle) ให้เพิ่มทรัพยากร Dependency สำหรับไลบรารี Crashlytics สำหรับ Android เราขอแนะนำให้ใช้ Firebase Android BoM เพื่อควบคุมการกำหนดเวอร์ชันของไลบรารี

หากต้องการใช้ประโยชน์จากบันทึกเบรดครัมบ์ ให้เพิ่ม Firebase SDK สำหรับ Google Analytics ลงในแอปด้วย และตรวจสอบว่าได้เปิดใช้ Google Analytics ในโปรเจ็กต์ Firebase แล้ว

dependencies {
    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:35.0.2"))

    // Add the dependencies for the Crashlytics and Analytics libraries
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-crashlytics")
    implementation("com.google.firebase:firebase-analytics")
}

การใช้ Firebase Android BoM จะทำให้แอปใช้ไลบรารี Firebase Android เวอร์ชันที่เข้ากันได้อยู่เสมอ

(ทางเลือก)  เพิ่มทรัพยากร Dependency ของไลบรารี Firebase โดยไม่ใช้ BoM

หากเลือกที่จะไม่ใช้ Firebase BoM คุณต้องระบุเวอร์ชันของไลบรารี Firebase แต่ละเวอร์ชันในบรรทัดทรัพยากร Dependency

โปรดทราบว่าหากคุณใช้ไลบรารี Firebase หลายรายการในแอป เราขอแนะนำอย่างยิ่งให้ใช้ BoM เพื่อจัดการเวอร์ชันไลบรารี ซึ่งจะช่วยให้มั่นใจได้ว่าทุกเวอร์ชันจะเข้ากันได้

dependencies {
    // Add the dependencies for the Crashlytics and Analytics libraries
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-crashlytics:21.0.0")
    implementation("com.google.firebase:firebase-analytics:24.0.0")
}

ขั้นตอนที่ 2: เพิ่มปลั๊กอิน Crashlytics Gradle ลงในแอป

  1. ในไฟล์ Gradle ระดับรูท (ระดับโปรเจ็กต์) (<project>/build.gradle.kts หรือ <project>/build.gradle) ให้เพิ่มปลั๊กอิน Gradle Crashlytics ลงในบล็อก plugins ดังนี้

    Kotlin

    plugins {
        // Make sure that you have the AGP plugin 8.1+ dependency
        id("com.android.application") version "8.1.4" apply false
        // ...
    
        // Make sure that you have the Google services Gradle plugin 4.4.1+ dependency
        id("com.google.gms.google-services") version "4.5.0" apply false
    
        // Add the dependency for the Crashlytics Gradle plugin
        id("com.google.firebase.crashlytics") version "3.0.8" apply false
    }

    Groovy

    plugins {
        // Make sure that you have the AGP plugin 8.1+ dependency
        id 'com.android.application' version '8.1.4' apply false
        // ...
    
        // Make sure that you have the Google services Gradle plugin 4.4.1+ dependency
        id 'com.google.gms.google-services' version '4.5.0' apply false
    
        // Add the dependency for the Crashlytics Gradle plugin
        id 'com.google.firebase.crashlytics' version '3.0.8' apply false
    }
  2. ในไฟล์ Gradle ของโมดูล (ระดับแอป) (โดยปกติคือ <project>/<app-module>/build.gradle.kts หรือ <project>/<app-module>/build.gradle) ให้เพิ่มปลั๊กอิน Gradle ของ Crashlytics ดังนี้

    Kotlin

    plugins {
      id("com.android.application")
      // ...
    
      // Make sure that you have the Google services Gradle plugin
      id("com.google.gms.google-services")
    
      // Add the Crashlytics Gradle plugin
      id("com.google.firebase.crashlytics")
    }

    Groovy

    plugins {
      id 'com.android.application'
      // ...
    
      // Make sure that you have the Google services Gradle plugin
      id 'com.google.gms.google-services'
    
      // Add the Crashlytics Gradle plugin
      id 'com.google.firebase.crashlytics'
    }

ขั้นตอนที่ 3: บังคับให้เกิดการทดสอบข้อขัดข้องเพื่อตั้งค่าให้เสร็จสมบูรณ์

หากต้องการตั้งค่า Crashlytics ให้เสร็จและดูข้อมูลเบื้องต้นในแดชบอร์ด Crashlytics ของคอนโซล Firebase คุณต้องบังคับให้เกิดข้อขัดข้องทดสอบ

  1. เพิ่มโค้ดลงในแอปที่คุณสามารถใช้เพื่อบังคับให้เกิดข้อขัดข้องในการทดสอบ

    คุณสามารถใช้โค้ดต่อไปนี้ใน MainActivity ของแอปเพื่อเพิ่มปุ่มลงในแอป ซึ่งเมื่อกดแล้วจะทำให้แอปขัดข้อง ปุ่มจะมีป้ายกำกับว่า "ทดสอบข้อขัดข้อง"

    Kotlin

    val crashButton = Button(this)
    crashButton.text = "Test Crash"
    crashButton.setOnClickListener {
       throw RuntimeException("Test Crash") // Force a crash
    }
    
    addContentView(crashButton, ViewGroup.LayoutParams(
           ViewGroup.LayoutParams.MATCH_PARENT,
           ViewGroup.LayoutParams.WRAP_CONTENT))

    Java

    Button crashButton = new Button(this);
    crashButton.setText("Test Crash");
    crashButton.setOnClickListener(new View.OnClickListener() {
       public void onClick(View view) {
           throw new RuntimeException("Test Crash"); // Force a crash
       }
    });
    
    addContentView(crashButton, new ViewGroup.LayoutParams(
           ViewGroup.LayoutParams.MATCH_PARENT,
           ViewGroup.LayoutParams.WRAP_CONTENT));
  2. สร้างและเรียกใช้แอป

  3. บังคับให้เกิดข้อขัดข้องทดสอบเพื่อส่งรายงานข้อขัดข้องแรกของแอป โดยทำดังนี้

    1. เปิดแอปจากอุปกรณ์ทดสอบหรือโปรแกรมจำลอง

    2. ในแอป ให้กดปุ่ม "ทดสอบข้อขัดข้อง" ที่คุณเพิ่มโดยใช้โค้ดด้านบน

    3. หลังจากแอปขัดข้อง ให้รีสตาร์ทแอปเพื่อให้แอปส่งรายงานข้อขัดข้องไปยัง Firebase ได้

  4. ในคอนโซล Firebase ให้ไปที่แดชบอร์ด DevOps และการมีส่วนร่วม > Crashlytics เพื่อตรวจสอบรายงานข้อขัดข้องทดสอบ

    หากรีเฟรชคอนโซลแล้วและยังไม่เห็นข้อขัดข้องทดสอบหลังจากผ่านไป 5 นาที ให้เปิดใช้การบันทึกการแก้ไขข้อบกพร่องเพื่อดูว่าแอปส่งรายงานข้อขัดข้องหรือไม่


เพียงเท่านี้ก็เรียบร้อยแล้ว ตอนนี้ Crashlytics กำลังตรวจสอบแอปของคุณเพื่อหาข้อขัดข้อง ข้อผิดพลาดที่ไม่ร้ายแรง และ ANR ไปที่แดชบอร์ด Crashlytics เพื่อดูและตรวจสอบรายงานและสถิติทั้งหมด

ขั้นตอนถัดไป

  • ปรับแต่งการตั้งค่ารายงานข้อขัดข้องโดยเพิ่มการรายงานแบบเลือกใช้ บันทึก คีย์ และการติดตามข้อผิดพลาดที่ไม่ร้ายแรง

  • ผสานรวมกับ Google Play เพื่อให้คุณกรองรายงานข้อขัดข้องของแอป Android ตามแทร็ก Google Play ได้โดยตรงในแดชบอร์ด Crashlytics ซึ่งจะช่วยให้คุณมุ่งเน้นแดชบอร์ดไปที่บิลด์ที่เฉพาะเจาะจงได้ดีขึ้น

  • ดูและกรองข้อมูล Crashlytics ใน Android Studio

    • ใช้หน้าต่างข้อมูลเชิงลึกด้านคุณภาพของแอป (AQI) ใน Android Studio เพื่อดูข้อมูล Crashlytics ควบคู่ไปกับโค้ดของคุณ โดยไม่จำเป็นต้องสลับไปมาระหว่างแดชบอร์ด Crashlytics กับ IDE เพื่อเริ่มแก้ไขข้อบกพร่องของปัญหาที่สำคัญที่สุด
    • ดูวิธีใช้หน้าต่าง AQI ในเอกสารประกอบของ Android Studio
    • เรายินดีรับฟังความคิดเห็นจากคุณ ส่งความคิดเห็นเกี่ยวกับหน้าต่าง AQI โดยยื่นรายงานข้อบกพร่อง

  • ส่งออกข้อมูลไปยัง BigQuery หรือ Cloud Logging เพื่อใช้การวิเคราะห์และฟีเจอร์ขั้นสูง เช่น การค้นหาข้อมูล การสร้างแดชบอร์ดที่กำหนดเอง และการตั้งค่าการแจ้งเตือนที่กำหนดเอง