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, beginnt Firebase automatisch mit der Erfassung von Daten für das Bildschirm-Rendering Ihrer App und von Daten im Zusammenhang mit dem Lebenszyklus Ihrer App (z. B. App-Startzeit). Damit Firebase Netzwerkanfragen überwachen kann, müssen Sie auch das Gradle-Plug-in Performance Monitoring hinzufügen (nächster Schritt).

  1. Fügen Sie in der Gradle-Datei des Moduls (auf App-Ebene) (normalerweise <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 Bibliotheksversionierung zu steuern.

    dependencies {
        // Import the BoM for the Firebase platform
        implementation(platform("com.google.firebase:firebase-bom:35.0.1"))
    
        // 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 Verwendung der BoM hinzufügen

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

    Wenn Sie mehrere Firebase-Bibliotheken in Ihrer App verwenden, empfehlen wir dringend, die BoM zur Verwaltung der Bibliotheksversionen zu verwenden. So wird sichergestellt, 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:23.0.1")
    }

  2. Kompilieren Sie Ihre Anwendung neu.

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

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

  1. Fügen Sie in der Gradle-Datei auf Stammebene (Projektebene) (<project>/build.gradle.kts oder <project>/build.gradle) das Gradle-Plug-in Performance Monitoring 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.5.0" 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.5.0' 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 Ihres Moduls (auf App-Ebene) (normalerweise <project>/<app-module>/build.gradle.kts oder <project>/<app-module>/build.gradle) das Gradle-Plug-in Performance Monitoring 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 Anwendung neu.

Schritt 3: Leistungsereignisse für die erste Datenanzeige generieren

Firebase beginnt mit der Verarbeitung der Ereignisse, wenn Sie das SDK 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-Konsole das Leistungs-Dashboard auf. Die ersten Daten sollten innerhalb weniger Minuten angezeigt werden.

    Wenn Sie keine Anzeige Ihrer ursprünglichen Daten sehen, lesen Sie die Tipps zur Fehlerbehebung.

Schritt 4: (Optional) Logeinträge für Leistungsereignisse ansehen

  1. Aktivieren Sie das Debugging-Logging für Performance Monitoring beim Erstellen, indem Sie der Datei AndroidManifest.xml Ihrer Anwendung ein <meta-data>-Element hinzufügen:

    <application>
        <meta-data
          android:name="firebase_performance_logcat_enabled"
          android:value="true" />
    </application>
  2. Prüfen Sie Ihre Logeinträge auf Fehlermeldungen.

  3. Performance Monitoring kennzeichnet seine Logeinträge mit FirebasePerformance. Mit der Logcat-Filterung können Sie sich die Wiedergabedauer-Trace- und HTTP/S-Netzwerkanfrage-Logs gezielt ansehen. Führen Sie dazu den folgenden Befehl aus:

    adb logcat -s FirebasePerformance
  4. Suchen Sie nach den folgenden Logtypen, die darauf hinweisen, 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 Minuten 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 zu bestimmtem Code in Ihrer App im Blick behalten möchten, können Sie benutzerdefinierte Code-Traces instrumentieren.

Mit einem benutzerdefinierten Code-Trace können Sie messen, wie lange Ihre App für eine bestimmte Aufgabe oder eine Reihe von Aufgaben benötigt, z. B. für das Laden einer Reihe von Bildern oder das Abfragen Ihrer Datenbank. Der Standardmesswert für einen benutzerdefinierten Code-Trace ist die Dauer. Sie können aber auch benutzerdefinierte Messwerte wie Cache-Treffer und Speicherwarnungen hinzufügen.

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

Weitere Informationen zu diesen Funktionen und dazu, wie Sie sie Ihrer App hinzufügen, 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 Leistungs-Dashboard der Firebase-Konsole überwachen.

Bekannte Probleme

  • Das Performance Monitoring-Gradle-Plug-in v1.1.0 kann zu einer Abweichung bei 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;

    In diesem Fall haben Sie folgende Möglichkeiten:

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

    • Ersetzen Sie die Zeile mit der Plug-in-Abhängigkeit Performance Monitoring in der Gradle-Datei auf Stammebene (Projektebene) (<project>/build.gradle.kts oder <project>/build.gradle) so:

      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 Gesamtgröße der Nutzlast 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