Erste Schritte mit der Leistungsüberwachung für Android

Hinweis

Falls noch nicht geschehen, fügen Sie Ihrem Android-Projekt Firebase hinzu.

Schritt 1: Performance Monitoring SDK zu Ihrer App hinzufügen

Nachdem Sie das Performance Monitoring SDK hinzugefügt haben, erhebt Firebase automatisch Daten zum Bildschirm-Rendering Ihrer App und Daten zum Lebenszyklus Ihrer App (z. B. zur App-Startzeit). Damit Firebase Netzwerkanfragen überwachen kann, müssen Sie zusätzlich das Performance Monitoring Gradle-Plug-in hinzufügen (nächster Schritt).

  1. Fügen Sie in der Gradle-Datei des Moduls (auf Anwendungsebene) (in der Regel <project>/<app-module>/build.gradle.kts oder <project>/<app-module>/build.gradle) die Abhängigkeit für die Performance Monitoring Bibliothek für Android hinzu. Wir empfehlen, die Firebase Android BoM zu verwenden, um die Bibliotheksversionsverwaltung zu steuern.

    dependencies {
        // Import the BoM for the Firebase platform
        implementation(platform("com.google.firebase:firebase-bom:34.13.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")
    }

    Mit der Firebase Android BoM, haben Sie immer eine kompatible Version der Firebase Android-Bibliotheken in Ihrer App.

    (Alternative)   Firebase-Bibliotheksabhängigkeiten ohne BoM hinzufügen

    Wenn Sie die Firebase BoM nicht verwenden möchten, müssen Sie die Version jeder Firebase-Bibliothek in der entsprechenden Abhängigkeitszeile angeben.

    Hinweis: Wenn Sie in Ihrer App mehrere Firebase-Bibliotheken verwenden, empfehlen wir dringend, die BoM zur Verwaltung der Bibliotheksversionen zu verwenden, um sicherzustellen, dass alle Versionen kompatibel sind.

    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:22.0.5")
    }

  2. Kompilieren Sie Ihre App neu.

Schritt 2: Performance Monitoring Gradle-Plug-in zu Ihrer App hinzufügen

Nachdem Sie das Performance Monitoring Gradle-Plug-in hinzugefügt haben, erhebt Firebase automatisch Daten für HTTP/S-Netzwerkanfragen. Mit dem Plug-in können Sie auch benutzerdefinierte Code-Traces mit der Annotation@AddTrace instrumentieren.

  1. Fügen Sie in der Gradle-Datei auf Stammebene (Projektebene) (<project>/build.gradle.kts oder <project>/build.gradle) das Performance Monitoring Gradle-Plug-in hinzu:

    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.4" apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id("com.google.firebase.firebase-perf") version "2.0.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.4' apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id 'com.google.firebase.firebase-perf' version '2.0.2' apply false
    }
  2. Fügen Sie in der Gradle-Datei des Moduls (auf Anwendungsebene) (in der Regel <project>/<app-module>/build.gradle.kts oder <project>/<app-module>/build.gradle) das Performance Monitoring Gradle-Plug-in hinzu:

    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. Kompilieren Sie Ihre App neu.

Schritt 3: Leistungsereignisse für die erste Datenanzeige generieren

Firebase beginnt mit der Verarbeitung der Ereignisse, wenn Sie das SDK erfolgreich zu Ihrer App hinzugefügt haben. Wenn Sie noch lokal entwickeln, interagieren Sie mit Ihrer App, um Ereignisse für die erste Datenerhebung und -verarbeitung zu generieren.

  1. Generieren Sie Ereignisse, indem Sie Ihre App mehrmals zwischen Hintergrund und Vordergrund wechseln, mit Ihrer App interagieren, indem Sie zwischen Bildschirmen navigieren, und/oder Netzwerkanfragen auslösen.

  2. Rufen Sie in der Firebase Console das Performance Dashboard auf. Die erste Datenanzeige sollte innerhalb weniger Minuten zu sehen sein.

    Wenn Sie keine Anzeige Ihrer ersten Daten sehen, lesen Sie die Tipps zur Fehlerbehebung.

Schritt 4: (Optional) Logmeldungen für Leistungsereignisse ansehen

  1. Aktivieren Sie die Debug-Protokollierung für Performance Monitoring zur Build-Dauer, indem Sie der Datei AndroidManifest.xml Ihrer App ein <meta-data> Element hinzufügen:

    <application>
        <meta-data
          android:name="firebase_performance_logcat_enabled"
          android:value="true" />
    </application>
  2. Prüfen Sie die Logmeldungen auf Fehlermeldungen.

  3. Performance Monitoring kennzeichnet seine Logmeldungen mit FirebasePerformance. Mit der logcat-Filterung können Sie die Protokollierung von Wiedergabedauer-Traces und HTTP/S-Netzwerkanfragen speziell aufrufen, indem Sie den folgenden Befehl ausführen:

    adb logcat -s FirebasePerformance
  4. Prüfen Sie, ob die folgenden Arten von Logs vorhanden sind. Sie zeigen an, dass Performance Monitoring Leistungsereignisse protokolliert:

    • Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. Klicken Sie auf die URL, um Ihre Daten in der Firebase Console aufzurufen. Es kann einige Augenblicke dauern, bis die Daten im Dashboard aktualisiert werden.

Wenn Ihre App keine Leistungsereignisse protokolliert, lesen Sie die Tipps zur Fehlerbehebung.

Schritt 5: (Optional) Benutzerdefiniertes Monitoring für bestimmten Code hinzufügen

Wenn Sie Leistungsdaten für bestimmten Code in Ihrer App überwachen möchten, können Sie benutzerdefinierte Code-Traces instrumentieren.

Mit einem benutzerdefinierten Code-Trace können Sie messen, wie lange Ihre App benötigt, um eine bestimmte Aufgabe oder eine Reihe von Aufgaben auszuführen, z. B. eine Reihe von Bildern zu laden oder Ihre Datenbank abzufragen. Der Standardmesswert für einen benutzerdefinierten Code-Trace ist seine Dauer. Sie können aber auch benutzerdefinierte Messwerte hinzufügen, z. B. Cache-Treffer und Warnungen zum Arbeitsspeicher.

In Ihrem Code definieren Sie den Anfang und das Ende eines benutzerdefinierten Code-Traces und fügen alle gewünschten benutzerdefinierten Messwerte hinzu. Dazu verwenden Sie die API, die vom Performance Monitoring SDK bereitgestellt wird. Bei Android-Apps können Sie die Dauer von bestimmten Methoden auch mit der Annotation @AddTrace überwachen.

Weitere Informationen zu diesen Funktionen und zum Hinzufügen zu Ihrer App finden Sie unter Monitoring für bestimmten Code hinzufügen.

Schritt 6: App bereitstellen und Ergebnisse prüfen

Nachdem Sie Performance Monitoring mit einem oder mehreren Testgeräten validiert haben, können Sie die aktualisierte Version Ihrer App für Ihre Nutzer bereitstellen.

Sie können Leistungsdaten im Performance Dashboard der Firebase Console überwachen.

Bekannte Probleme

  • Das Performance Monitoring Gradle-Plug-in v1.1.0 kann zu einer Abweichung bei den Guava Abhängigkeiten führen, was den folgenden Fehler verursacht:

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

    Wenn dieser Fehler angezeigt wird, haben Sie folgende Möglichkeiten:

    • Aktualisieren Sie das Performance Monitoring Plug-in auf Version 1.1.1 oder höher (die neueste Version ist 2.0.2).

    • Ersetzen Sie die Performance Monitoring Plug-in-Abhängigkeitszeile in Ihrer Gradle-Datei auf Stammebene (Projektebene) (<project>/build.gradle.kts oder <project>/build.gradle) wie folgt:

      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 meldet die Gesamtnutzlastgröße für HTTP-Netzwerkanfragen basierend auf dem Wert, der im HTTP-Header „content-length“ festgelegt ist. Dieser Wert ist möglicherweise nicht immer genau.

  • Performance Monitoring unterstützt nur den Hauptprozess in Android-Apps mit mehreren Prozessen.

Nächste Schritte