Erste Schritte mit der Leistungsüberwachung für Android

Hinweis

Fügen Sie Ihrem Android-Projekt Firebase hinzu, falls noch nicht geschehen.

Schritt 1: Performance Monitoring SDK in Ihre App einfügen

Nachdem Sie das Performance Monitoring SDK hinzugefügt haben, beginnt Firebase automatisch mit der Erfassung von Daten zum Rendern von Bildschirmen in Ihrer App und Daten zum Lebenszyklus Ihrer App, z. B. zur Startzeit der App. Damit Firebase Netzwerkanfragen überwachen kann, müssen Sie auch das Performance Monitoring-Gradle-Plug-in hinzufügen (nächster Schritt).

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

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

  2. Kompilieren Sie die App neu.

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

Nachdem Sie das Performance Monitoring-Gradle-Plugin 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 Ihrer 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.4.3" apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id("com.google.firebase.firebase-perf") version "2.0.0" 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.3' apply false
    
        // Add the dependency for the Performance Monitoring Gradle plugin
        id 'com.google.firebase.firebase-perf' version '2.0.0' apply false
    }
  2. Fügen Sie in der Gradle-Datei des Moduls (auf App-Ebene) (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 die App neu.

Schritt 3: Leistungsereignisse für die erste Datenanzeige generieren

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

    Wenn Ihre ursprünglichen Daten nicht angezeigt werden, sehen Sie sich die Tipps zur Fehlerbehebung an.

Schritt 4: (Optional) Log-Meldungen für Leistungsereignisse ansehen

  1. Aktivieren Sie das Debug-Logging für Performance Monitoring zur Build-Zeit, indem Sie der AndroidManifest.xml-Datei 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 Ihre Logmeldungen auf Fehlermeldungen.

  3. Performance Monitoring kennzeichnet seine Logmeldungen mit FirebasePerformance. Mit der logcat-Filterung können Sie sich mit dem folgenden Befehl speziell die Dauer-Traces und das HTTP/S-Netzwerkanfrage-Logging ansehen:

    adb logcat -s FirebasePerformance
  4. Suchen Sie nach den folgenden Arten von Logs, 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 Momente dauern, bis die Daten im Dashboard aktualisiert werden.

Wenn in Ihrer App keine Leistungsereignisse protokolliert werden, finden Sie hier Tipps zur Fehlerbehebung.

Schritt 5: (Optional) Benutzerdefinierte Überwachung für bestimmten Code hinzufügen

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

Mit einem benutzerdefinierten Code-Trace können Sie messen, wie lange Ihre App für die Ausführung einer bestimmten Aufgabe oder einer Reihe von Aufgaben benötigt, z. B. zum Laden einer Reihe von Bildern oder zum Abfragen Ihrer Datenbank. Der Standardmesswert für einen benutzerdefinierten Code-Trace ist seine 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-Traces und fügen mithilfe der vom Performance Monitoring SDK bereitgestellten API alle gewünschten benutzerdefinierten Messwerte hinzu. 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 in Ihre App einfügen, finden Sie hier.

Schritt 6: App bereitstellen und Ergebnisse ansehen

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 Dashboard zur Leistungsüberwachung der Firebase-Konsole einsehen.

Bekannte Probleme

  • Das Performance Monitoring-Gradle-Plug-in v1.1.0 kann zu einem Konflikt bei Guava-Abhängigkeiten führen, was den folgenden Fehler zur Folge hat:

    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 aktuelle Version ist 2.0.0).

    • Ersetzen Sie die Zeile mit der Performance Monitoring-Plug-in-Abhängigkeit in Ihrer 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 gibt die Gesamtgröße der Nutzlast für HTTP-Netzwerkanfragen basierend auf dem im HTTP-Header „content-length“ festgelegten Wert an. Dieser Wert ist möglicherweise nicht immer genau.

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

Nächste Schritte