| เลือกแพลตฟอร์ม: | iOS+ Android Android NDK Flutter Unity |
คู่มือนี้อธิบายวิธีเริ่มต้นใช้งาน Firebase Crashlytics ใน แอป Android
หลังจากตั้งค่า Firebase Crashlytics SDK ในแอปแล้ว คุณจะได้รับ รายงานข้อขัดข้องที่ครอบคลุมในคอนโซล Firebase โดย Crashlytics สำหรับ Android จะให้รายงานข้อขัดข้อง ข้อผิดพลาดที่ไม่ร้ายแรง และ "แอปพลิเคชันไม่ตอบสนอง" (ANR)
การตั้งค่า Crashlytics ต้องทำทั้งในคอนโซล Firebase และ IDE (เช่น การเพิ่มไฟล์การกำหนดค่า Firebase และ Crashlytics SDK) คุณต้องบังคับให้เกิดข้อขัดข้องในการทดสอบเพื่อส่งรายงานข้อขัดข้องแรกไปยัง Firebase จึงจะตั้งค่าให้เสร็จสมบูรณ์ได้
ก่อนเริ่มต้น
หากยังไม่ได้ดำเนินการ เพิ่ม Firebase ลงในโปรเจ็กต์ Android หากไม่มีแอป Android คุณสามารถดาวน์โหลด แอปตัวอย่างได้
แนะนำ: หากต้องการรับ บันทึก Breadcrumb โดยอัตโนมัติเพื่อทำความเข้าใจการกระทำของผู้ใช้ที่นำไปสู่เหตุการณ์ข้อขัดข้อง ข้อผิดพลาดที่ไม่ร้ายแรง หรือ ANR คุณต้องเปิดใช้ Google Analytics ในโปรเจ็กต์ Firebase
หากจะสร้างโปรเจ็กต์ Firebase ใหม่ ให้เปิดใช้ Google Analytics ในระหว่างขั้นตอนการสร้างโปรเจ็กต์
หากใช้โปรเจ็กต์ Firebase เดิมที่ไม่ได้เปิดใช้ Google Analytics คุณสามารถเปิดใช้ได้ในหน้า
Settings > Integrations ของ Firebase คอนโซล
ตรวจสอบว่าแอปมีเวอร์ชันที่กำหนด ขั้นต่ำ ดังนี้
- Gradle 8.0
- ปลั๊กอิน Android Gradle 8.1.0
- ปลั๊กอิน Gradle ของบริการ Google 4.4.1
ขั้นตอนที่ 1: เพิ่ม Crashlytics SDK ลงในแอป
ในไฟล์ Gradle ของโมดูล (ระดับแอป) (โดยปกติจะเป็น<project>/<app-module>/build.gradle.kts หรือ
<project>/<app-module>/build.gradle)
ให้เพิ่มทรัพยากร Dependency สำหรับCrashlyticsไลบรารีสำหรับ Android เราขอแนะนำให้ใช้
Firebase Android BoM
เพื่อควบคุมการกำหนดเวอร์ชันของไลบรารี
หากต้องการใช้ประโยชน์จากบันทึก Breadcrumb ให้เพิ่ม Firebase SDK สำหรับGoogle Analyticsลงในแอปด้วย และตรวจสอบว่า ได้เปิดใช้ Google Analytics ในโปรเจ็กต์ Firebase แล้ว
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.13.0")) // 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:20.0.6") implementation("com.google.firebase:firebase-analytics:23.2.0") }
ขั้นตอนที่ 2: เพิ่มปลั๊กอิน Crashlytics Gradle ลงในแอป
ในไฟล์ Gradle ระดับราก (ระดับโปรเจ็กต์) (
<project>/build.gradle.ktsหรือ<project>/build.gradle) ให้เพิ่มปลั๊กอิน Gradle Crashlytics ลงในบล็อกpluginsดังนี้CrashlyticsKotlin
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.4.4" apply false // Add the dependency for the Crashlytics Gradle plugin id("com.google.firebase.crashlytics") version "3.0.7" 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.4.4' apply false // Add the dependency for the Crashlytics Gradle plugin id 'com.google.firebase.crashlytics' version '3.0.7' apply false }
ในไฟล์ Gradle ระดับโมดูล (ระดับแอป) (โดยปกติจะเป็น
<project>/<app-module>/build.gradle.ktsหรือ<project>/<app-module>/build.gradle) ให้เพิ่มปลั๊กอิน Crashlytics Gradle ดังนี้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 คอนโซล คุณต้องบังคับให้เกิด ข้อขัดข้องในการทดสอบ
เพิ่มโค้ดลงในแอปที่คุณใช้บังคับให้เกิดข้อขัดข้องในการทดสอบได้
คุณสามารถใช้โค้ดต่อไปนี้ใน
MainActivityของแอปเพื่อเพิ่มปุ่มลงในแอป ซึ่งเมื่อกดแล้วจะทำให้เกิดข้อขัดข้อง ปุ่มนี้มีป้ายกำกับว่า "Test Crash"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));
สร้างและเรียกใช้แอป
บังคับให้เกิดข้อขัดข้องในการทดสอบเพื่อส่งรายงานข้อขัดข้องแรกของแอป โดยทำดังนี้
เปิดแอปจากอุปกรณ์ทดสอบหรือโปรแกรมจำลอง
ในแอป ให้กดปุ่ม "Test Crash" ที่คุณเพิ่มโดยใช้โค้ดด้านบน
หลังจากแอปขัดข้อง ให้รีสตาร์ทแอปเพื่อให้แอปส่งรายงานข้อขัดข้องไปยัง Firebase ได้
ในคอนโซล Firebase ให้ไปที่แดชบอร์ด DevOps & Engagement > 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 เพื่อใช้ฟีเจอร์และการวิเคราะห์ขั้นสูง เช่น การค้นหาข้อมูล การสร้างแดชบอร์ดที่กำหนดเอง และการตั้งค่าการแจ้งเตือนที่กำหนดเอง