Premiers pas avec Performance Monitoring pour Android

Avant de commencer

Si ce n'est pas déjà fait, Ajoutez Firebase à votre projet Android.

Étape 1: Ajoutez le SDK Performance Monitoring à votre application

Une fois que vous avez ajouté le SDK Performance Monitoring, Firebase commence automatiquement à collecter pour le rendu de l'écran et les données liés au cycle de vie de votre application heure de démarrage de l'application). À activer Firebase pour surveiller les requêtes réseau, vous devez également ajouter le Performance Monitoring Plug-in Gradle (étape suivante).

  1. Dans le fichier Gradle de votre module (au niveau de l'application) (généralement <project>/<app-module>/build.gradle.kts ou <project>/<app-module>/build.gradle), Ajoutez la dépendance pour la bibliothèque Performance Monitoring pour Android. Nous vous recommandons d'utiliser Firebase Android BoM pour contrôler la gestion des versions des bibliothèques.

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

    En utilisant Firebase Android BoM, votre application utilisera toujours des versions compatibles des bibliothèques Firebase Android.

    (Alternative) Ajoutez des dépendances de bibliothèque Firebase sans utiliser BoM.

    Si vous choisissez de ne pas utiliser Firebase BoM, vous devez spécifier chaque version de la bibliothèque Firebase dans sa ligne de dépendance.

    Notez que si vous utilisez plusieurs bibliothèques Firebase dans votre application, recommandent d'utiliser BoM pour gérer les versions de la bibliothèque, ce qui garantit que toutes les versions sont compatibles.

    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.1")
    }
    Vous recherchez un module de bibliothèque spécifique à Kotlin ? Début dans Octobre 2023 (Firebase BoM 32.5.0), les développeurs Kotlin et Java peuvent dépendent du module de bibliothèque principal (pour en savoir plus, consultez Questions fréquentes sur cette initiative).

  2. Recompilez votre application.

Étape 2 : Ajoutez le plug-in Gradle Performance Monitoring à votre application

Une fois que vous avez ajouté le plug-in Gradle Performance Monitoring, Firebase démarre automatiquement en collectant des données pour Requêtes réseau HTTP/S La le plug-in vous permet également d'instrumenter des traces de code personnalisées à l'aide de Annotation@AddTrace.

  1. Dans votre fichier Gradle au niveau racine (au niveau du projet) (<project>/build.gradle.kts ou <project>/build.gradle), ajoutez le plug-in 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. Dans votre fichier Gradle au niveau du module (application) (généralement <project>/<app-module>/build.gradle.kts ou <project>/<app-module>/build.gradle), ajoutez le plug-in 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. Recompilez votre application.

Étape 3: Générez des événements liés aux performances pour l'affichage initial des données

Firebase commence à traiter les événements lorsque vous avez correctement ajouté le SDK à votre application. Si vous êtes toujours en cours de développement local, interagissez avec votre application pour générer des événements afin de collecter et de traiter les données de manière initiale.

<ph type="x-smartling-placeholder">
    </ph>
  1. Générer des événements en basculant votre application entre arrière-plan et premier plan en interagissant avec votre application en naviguant d'un écran à l'autre, et/ou en déclenchant des requêtes réseau.

  2. Accédez au tableau de bord Performances. de la console Firebase. Vos données initiales doivent s'afficher dans quelques minutes.

    Si vous ne voyez pas vos données initiales, consultez la section conseils.

Étape 4 : (Facultatif) Afficher les messages de journal pour les événements de performances

  1. Activez la journalisation de débogage pour Performance Monitoring au moment de la compilation en ajoutant un élément <meta-data> au fichier AndroidManifest.xml de votre application, comme suit :

    <application>
        <meta-data
          android:name="firebase_performance_logcat_enabled"
          android:value="true" />
    </application>
  2. Recherchez d'éventuels messages d'erreur dans vos messages de journal.

  3. Performance Monitoring ajoute un tag FirebasePerformance à ses messages de journal. Utiliser Logcat vous pouvez afficher spécifiquement la trace de la durée et le réseau HTTP/S en exécutant la commande suivante:

    adb logcat -s FirebasePerformance
  4. Recherchez les types de journaux suivants, qui indiquent que Performance Monitoring est sur la journalisation des événements liés aux performances:

    • Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. Cliquez sur l'URL pour afficher vos données dans la console Firebase. La mise à jour des données dans le tableau de bord peut prendre quelques instants.

Si votre application n'enregistre pas d'événements de performances, consultez les conseils de dépannage.

Étape 5: (Facultatif) Ajouter une surveillance personnalisée pour un code spécifique

Pour surveiller les données de performances associées à un code spécifique dans votre application, vous pouvez : instrumenter des traces de code personnalisés.

Avec une trace de code personnalisée, vous pouvez mesurer le temps nécessaire à l'exécution de votre application une tâche ou un ensemble de tâches spécifique, comme le chargement d'un ensemble d'images ou l'interrogation votre base de données. La métrique par défaut d'une trace de code personnalisé est sa durée, mais vous pouvez également ajouter des métriques personnalisées, telles que des succès de cache et des avertissements concernant la mémoire.

Dans votre code, vous définissez le début et la fin d'une trace de code personnalisé (et ajouter les métriques personnalisées de votre choix) à l'aide de l'API fournie par le SDK Performance Monitoring. Pour les applications Android, vous pouvez également surveiller la durée des méthodes spécifiques à l’aide Annotation@AddTrace.

Consultez Ajouter la surveillance pour un code spécifique. pour en savoir plus sur ces fonctionnalités et découvrir comment les ajouter à votre application.

Étape 6: Déployer l'application, puis examiner les résultats

Après avoir validé Performance Monitoring à l'aide d'un ou de plusieurs appareils de test, vous pouvez déployer la version mise à jour de votre application auprès de vos utilisateurs.

Vous pouvez surveiller les données de performances Tableau de bord Performances de la console Firebase.

Problèmes connus

  • Le plug-in Gradle v1.1.0 Performance Monitoring peut provoquer une incohérence dans Guava ce qui entraîne l'erreur suivante:

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

    Si ce message d'erreur s'affiche, plusieurs possibilités s'offrent à vous:

    • Mettez à niveau le plug-in Performance Monitoring vers la version 1.1.1 ou ultérieure (la version la plus récente est v1.4.2).

    • Remplacez la ligne de dépendance du plug-in Performance Monitoring dans votre Fichier Gradle au niveau racine (au niveau du projet) (<project>/build.gradle.kts ou <project>/build.gradle), comme suit:

      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 indique la taille totale de la charge utile pour les requêtes réseau HTTP basées sur sur la valeur définie dans l'en-tête HTTP content-length. Cette valeur n'est pas toujours exacte.

  • Performance Monitoring n'est compatible qu'avec le processus principal des applications Android multiprocessus.

Étapes suivantes