Bắt đầu sử dụng tính năng Giám sát hiệu suất cho Android

Trước khi bắt đầu

Nếu bạn chưa thực hiện, hãy thêm Firebase vào dự án Android.

Bước 1: Thêm SDK Performance Monitoring vào ứng dụng

Sau khi bạn thêm SDK Performance Monitoring, Firebase sẽ tự động bắt đầu thu thập dữ liệu cho hoạt động kết xuất màn hình của ứng dụng và dữ liệu liên quan đến vòng đời của ứng dụng (chẳng hạn như thời gian khởi động ứng dụng). Để cho phép Firebase giám sát các yêu cầu mạng, bạn cũng phải thêm trình bổ trợ Gradle Performance Monitoring (bước tiếp theo).

  1. Trong tệp Gradle (ở cấp ứng dụng) của mô-đun (thường là <project>/<app-module>/build.gradle.kts hoặc <project>/<app-module>/build.gradle), hãy thêm phần phụ thuộc cho thư viện Performance Monitoring dành cho Android. 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.

    dependencies {
        // Import the BoM for the Firebase platform
        implementation(platform("com.google.firebase:firebase-bom:33.7.0"))
    
        // Add the dependency for the Performance Monitoring library
        // When using the BoM, you don't specify versions in Firebase library dependencies
        implementation("com.google.firebase:firebase-perf")
    }

    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.

    (Phương án thay thế)  Thêm phần phụ thuộc 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 thư viện đó.

    Xin lưu ý rằng nếu bạn 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 dependency for the Performance Monitoring library
        // When NOT using the BoM, you must specify versions in Firebase library dependencies
        implementation("com.google.firebase:firebase-perf:21.0.3")
    }
    Bạn đang tìm một mô-đun thư viện dành riêng cho Kotlin? Kể từ tháng 10 năm 2023 (Firebase BoM 32.5.0), cả nhà phát triển Kotlin và Java đều có thể phụ thuộc vào mô-đun thư viện chính (để biết thông tin chi tiết, hãy xem Câu hỏi thường gặp về sáng kiến này).

  2. Biên dịch lại ứng dụng.

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

Sau khi bạn thêm trình bổ trợ Gradle Performance Monitoring, Firebase sẽ tự động bắt đầu thu thập dữ liệu cho các yêu cầu mạng HTTP/S. Trình bổ trợ này cũng cho phép bạn đo lường dấu vết mã tuỳ chỉnh bằng cách sử dụng chú thích @AddTrace.

  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 Performance Monitoring:

    Kotlin

    plugins {
        // To benefit from the latest Performance Monitoring plugin features,
        // update your Android Gradle plugin dependency to at least v3.4.0
        id("com.android.application") version "7.3.0" apply false
    
        // Make sure that you have the Google services Gradle plugin dependency
        id("com.google.gms.google-services") version "4.4.2" apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id("com.google.firebase.firebase-perf") version "1.4.2" apply false
    }

    Groovy

    plugins {
        // To benefit from the latest Performance Monitoring plugin features,
        // update your Android Gradle plugin dependency to at least v3.4.0
        id 'com.android.application' version '7.3.0' apply false
    
        // Make sure that you have the Google services Gradle plugin dependency
        id 'com.google.gms.google-services' version '4.4.2' apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id 'com.google.firebase.firebase-perf' version '1.4.2' 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 Performance Monitoring:

    Kotlin

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

    Groovy

    plugins {
        id 'com.android.application'
    
        // Make sure that you have the Google services Gradle plugin
        id 'com.google.gms.google-services'
    
        // Add the Performance Monitoring Gradle plugin
        id 'com.google.firebase.firebase-perf'
        ...
    }
  3. Biên dịch lại ứng dụng.

Bước 3: Tạo sự kiện hiệu suất để hiển thị dữ liệu ban đầu

Firebase bắt đầu xử lý các sự kiện khi bạn thêm thành công SDK vào ứng dụng. Nếu bạn vẫn đang phát triển cục bộ, hãy tương tác với ứng dụng để tạo sự kiện cho quá trình thu thập và xử lý dữ liệu ban đầu.

  1. Tạo sự kiện bằng cách chuyển đổi ứng dụng giữa chế độ nền và chế độ nền trước nhiều lần, tương tác với ứng dụng bằng cách di chuyển trên các màn hình và/hoặc kích hoạt các yêu cầu mạng.

  2. Chuyển đến Trang tổng quan về hiệu suất của bảng điều khiển Firebase. Bạn sẽ thấy dữ liệu ban đầu hiển thị trong vòng vài phút.

    Nếu bạn không thấy dữ liệu ban đầu, hãy xem các mẹo khắc phục sự cố.

Bước 4: (Không bắt buộc) Xem thông điệp nhật ký cho các sự kiện hiệu suất

  1. Bật tính năng ghi nhật ký gỡ lỗi cho Performance Monitoring tại thời điểm tạo bản dựng bằng cách thêm phần tử <meta-data> vào tệp AndroidManifest.xml của ứng dụng, như sau:

    <application>
        <meta-data
          android:name="firebase_performance_logcat_enabled"
          android:value="true" />
    </application>
  2. Kiểm tra thông điệp nhật ký để xem có thông báo lỗi nào không.

  3. Performance Monitoring gắn thẻ cho thông điệp nhật ký bằng FirebasePerformance. Khi sử dụng tính năng lọc logcat, bạn có thể xem cụ thể dấu vết thời lượng và nhật ký yêu cầu mạng HTTP/S bằng cách chạy lệnh sau:

    adb logcat -s FirebasePerformance
  4. Kiểm tra các loại nhật ký sau đây cho biết Performance Monitoring đang ghi lại các sự kiện hiệu suất:

    • Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. Nhấp vào URL để xem dữ liệu của bạn trong bảng điều khiển Firebase. Có thể mất vài giây để dữ liệu cập nhật trong trang tổng quan.

Nếu ứng dụng của bạn không ghi lại các sự kiện hiệu suất, hãy xem các mẹo khắc phục sự cố.

Bước 5: (Không bắt buộc) Thêm tính năng giám sát tuỳ chỉnh cho mã cụ thể

Để theo dõi dữ liệu hiệu suất liên kết với mã cụ thể trong ứng dụng, bạn có thể đo lường dấu vết mã tuỳ chỉnh.

Với dấu vết mã tuỳ chỉnh, bạn có thể đo lường thời gian ứng dụng của mình hoàn tất một tác vụ hoặc một nhóm tác vụ cụ thể, chẳng hạn như tải một nhóm hình ảnh hoặc truy vấn cơ sở dữ liệu. Chỉ số mặc định cho dấu vết mã tuỳ chỉnh là thời lượng, nhưng bạn cũng có thể thêm các chỉ số tuỳ chỉnh, chẳng hạn như số lượt truy cập vào bộ nhớ đệm và cảnh báo về bộ nhớ.

Trong mã, bạn xác định điểm bắt đầu và điểm kết thúc của dấu vết mã tuỳ chỉnh (và thêm mọi chỉ số tuỳ chỉnh mong muốn) bằng API do SDK Performance Monitoring cung cấp. Đối với ứng dụng Android, bạn cũng có thể theo dõi thời lượng của các phương thức cụ thể bằng cách sử dụng chú thích @AddTrace.

Truy cập vào phần Thêm tính năng giám sát cho mã cụ thể để tìm hiểu thêm về các tính năng này và cách thêm các tính năng này vào ứng dụng của bạn.

Bước 6: Triển khai ứng dụng rồi xem xét kết quả

Sau khi xác thực Performance Monitoring bằng một hoặc nhiều thiết bị thử nghiệm, bạn có thể triển khai phiên bản cập nhật của ứng dụng cho người dùng.

Bạn có thể theo dõi dữ liệu hiệu suất trong trang tổng quan về Hiệu suất của bảng điều khiển Firebase.

Các vấn đề đã biết

  • Trình bổ trợ Gradle Performance Monitoring phiên bản 1.1.0 có thể gây ra sự không khớp trong các phần phụ thuộc Guava, dẫn đến lỗi sau:

    Error:Execution failed for task ':app:packageInstantRunResourcesDebug'.
    > com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;

    Nếu gặp phải lỗi này, bạn có thể:

    • Nâng cấp trình bổ trợ Performance Monitoring lên phiên bản 1.1.1 trở lên (phiên bản mới nhất là v1.4.2).

    • Thay thế dòng phần phụ thuộc trình bổ trợ Performance Monitoring trong tệp Gradle cấp gốc (cấp dự án) (<project>/build.gradle.kts hoặc <project>/build.gradle) như sau:

      Kotlin

      buildscript {
        // ...
      
        dependencies {
          // ...
      
          // Replace the standard Performance Monitoring plugin dependency line, as follows:
          classpath("com.google.firebase:perf-plugin:1.1.0") {
              exclude(group = "com.google.guava", module = "guava-jdk5")
          }
        }
      }

      Groovy

      buildscript {
        // ...
      
        dependencies {
          // ...
      
          // Replace the standard Performance Monitoring plugin dependency line, as follows:
          classpath('com.google.firebase:perf-plugin:1.1.0') {
              exclude group: 'com.google.guava', module: 'guava-jdk5'
          }
        }
      }
  • Performance Monitoring báo cáo tổng kích thước tải trọng cho các yêu cầu mạng HTTP dựa trên giá trị được đặt trong tiêu đề độ dài nội dung HTTP. Giá trị này có thể không phải lúc nào cũng chính xác.

  • Performance Monitoring chỉ hỗ trợ quy trình chính trong các ứng dụng Android nhiều quy trình.

Các bước tiếp theo