Bắt đầu sử dụng Firebase Crashlytics


Hướng dẫn bắt đầu nhanh này mô tả cách thiết lập Firebase Crashlytics trong ứng dụng bằng SDK Firebase Crashlytics để bạn có thể nhận được báo cáo toàn diện về sự cố trong bảng điều khiển Firebase. Với Crashlytics cho Android, bạn sẽ nhận được báo cáo về sự cố, lỗi không nghiêm trọng và lỗi "Ứng dụng không phản hồi" (ANR).

Việc thiết lập Crashlytics đòi hỏi bạn phải thực hiện các thao tác trong cả bảng điều khiển Firebase và IDE (chẳng hạn như thêm tệp cấu hình Firebase và SDK Crashlytics). Để hoàn tất quá trình thiết lập, bạn cần xác định sự cố thử nghiệm để gửi báo cáo sự cố đầu tiên đến Firebase.

Trước khi bắt đầu

  1. Nếu bạn chưa thực hiện, hãy thêm Firebase vào dự án Android của bạn. Nếu không có ứng dụng Android, bạn có thể tải ứng dụng mẫu xuống.

  2. Đề xuất: Để tự động nhận nhật ký đường dẫn nhằm hiểu rõ các hành động của người dùng dẫn đến sự kiện gặp sự cố, không nghiêm trọng hoặc ANR, bạn cần bật Google Analytics trong dự án Firebase của mình.

    • Nếu dự án Firebase hiện tại của bạn chưa bật Google Analytics, bạn có thể bật Google Analytics trong thẻ Tích hợp của > Cài đặt dự án trong bảng điều khiển Firebase.

    • Nếu bạn đang tạo một dự án Firebase mới, hãy bật Google Analytics trong quy trình tạo dự án.

  3. Đảm bảo ứng dụng của bạn có các phiên bản tối thiểu bắt buộc sau đây:

    • Gradle 8.0
    • Trình bổ trợ Android cho Gradle 8.1.0
    • Trình bổ trợ Gradle cho Các dịch vụ của Google 4.4.1

Bước 1: Thêm SDK Crashlytics vào ứng dụng của bạn

<0x0<project>/<app-module>/build.gradle.kts<project>/<app-module>/build.gradleCrashlytics Bạn nên sử dụng Firebase Android BoM để kiểm soát việc tạo phiên bản thư viện.

Để tận dụng nhật ký đường dẫn, hãy thêm Firebase SDK cho Google Analytics vào ứng dụng của bạn. Đảm bảo rằng Google Analytics đã được bật trong dự án Firebase của bạn.

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

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

Bằng cách sử dụng Firebase Android BoM, ứng dụng của bạn sẽ luôn sử dụng những phiên bản tương thích của thư viện Android trên Firebase.

(Cách khác)  Thêm phần phụ thuộc của thư viện Firebase mà không sử dụng BoM

Nếu chọn không sử dụng Firebase BoM, bạn phải chỉ định từng phiên bản thư viện Firebase trong dòng phần phụ thuộc của phiên bản đó.

Xin lưu ý rằng nếu sử dụng nhiều thư viện Firebase trong ứng dụng, bạn nên sử dụng BoM để quản lý các phiên bản thư viện, nhằm đảm bảo rằng tất cả các phiên bản đều tương thích.

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

Bước 2: Thêm trình bổ trợ Crashlytics Gradle vào ứng dụng

  1. Trong tệp Gradle cấp gốc (cấp dự án) (<project>/build.gradle.kts hoặc <project>/build.gradle), hãy thêm trình bổ trợ Gradle Crashlytics vào khối 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.4.3" apply false
    
        // Add the dependency for the Crashlytics Gradle plugin
        id("com.google.firebase.crashlytics") version "3.0.5" 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.3' apply false
    
        // Add the dependency for the Crashlytics Gradle plugin
        id 'com.google.firebase.crashlytics' version '3.0.5' apply false
    }
  2. Trong tệp Gradle mô-đun (cấp ứng dụng) (thường là <project>/<app-module>/build.gradle.kts hoặc <project>/<app-module>/build.gradle), hãy thêm trình bổ trợ 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'
    }

Bước 3: Xác định sự cố thử nghiệm để hoàn tất việc thiết lập

Để hoàn tất việc thiết lập Crashlytics và xem dữ liệu ban đầu trên trang tổng quan Crashlytics của bảng điều khiển Firebase, bạn cần xác định sự cố thử nghiệm.

  1. Thêm mã vào ứng dụng mà bạn có thể dùng để buộc xảy ra sự cố trong quá trình kiểm thử.

    Bạn có thể dùng mã sau trong MainActivity của ứng dụng để thêm một nút vào ứng dụng. Khi nhấn nút này, ứng dụng sẽ gặp sự cố. Nút này có nhãn "Test Crash" (Kiểm thử sự cố).

    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. Tạo bản dựng và chạy ứng dụng của bạn.

  3. Buộc sự cố kiểm thử xảy ra để gửi báo cáo sự cố đầu tiên của ứng dụng:

    1. Mở ứng dụng trên thiết bị kiểm thử hoặc trình mô phỏng.

    2. Trong ứng dụng của bạn, hãy nhấn vào nút "Test Crash" (Kiểm thử sự cố) mà bạn đã thêm bằng mã ở trên.

    3. Sau khi ứng dụng gặp sự cố, hãy khởi động lại ứng dụng để ứng dụng có thể gửi báo cáo sự cố đến Firebase.

  4. Chuyển đến Crashlytics trang tổng quan của bảng điều khiển Firebase để xem sự cố trong quá trình kiểm thử.

    Nếu bạn đã làm mới bảng điều khiển nhưng vẫn không thấy sự cố kiểm thử sau 5 phút, hãy bật tính năng ghi nhật ký gỡ lỗi để xem ứng dụng của bạn có gửi báo cáo sự cố hay không.


Vậy là xong! Crashlytics hiện đang theo dõi ứng dụng của bạn để phát hiện sự cố, lỗi không nghiêm trọng và lỗi ANR. Truy cập vào Crashlytics trang tổng quan để xem và tìm hiểu tất cả báo cáo và số liệu thống kê của bạn.

Các bước tiếp theo

  • Tích hợp với Google Play để bạn có thể lọc báo cáo sự cố của ứng dụng Android theo Google Play ngay trong trang tổng quan Crashlytics. Nhờ đó, bạn có thể tập trung bảng điều khiển vào các bản dựng cụ thể.
  • Trong Android Studio, hãy xem và lọc dữ liệu Crashlytics.
    • Sử dụng cửa sổ App Quality Insights (AQI) trong Android Studio để xem dữ liệu Crashlytics cùng với mã của bạn. Bạn không cần chuyển đổi qua lại giữa trang tổng quan Crashlytics và IDE để bắt đầu gỡ lỗi các vấn đề hàng đầu.
    • Tìm hiểu cách sử dụng cửa sổ AQI trong tài liệu của Android Studio.
    • Chúng tôi rất mong nhận được phản hồi từ bạn! Gửi ý kiến phản hồi cho chúng tôi về cửa sổ AQI bằng cách gửi báo cáo lỗi.