Premiers pas avec Performance Monitoring pour les plates-formes Apple

Avant de commencer

Si ce n'est pas encore fait, ajoutez Firebase à votre projet Apple.

Étape 1 : Ajoutez Performance Monitoring à votre application

Une fois que vous avez ajouté le Performance Monitoring SDK, Firebase commence automatiquement à collecter des données sur le rendu de l'écran de votre application, des données liées à son cycle de vie (comme le temps de démarrage) et des données sur les requêtes réseau HTTP/S.

Utilisez Swift Package Manager pour installer et gérer les dépendances Firebase.

  1. Dans Xcode, à partir de votre projet d'application ouvert, accédez à File > Add Packages (Fichier > Ajouter des packages).
  2. Lorsque vous y êtes invité, ajoutez le dépôt du SDK des plates-formes Firebase pour Apple :
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. Choisissez la bibliothèque Performance Monitoring.
  5. Ajoutez l'indicateur -ObjC à la section Other Linker Flags (Autres indicateurs Linker) des paramètres de compilation de votre cible.
  6. Lorsque vous avez terminé, Xcode commence à résoudre et à télécharger automatiquement vos dépendances en arrière-plan.

Ensuite, configurez le module Firebase :

  1. Importez le module FirebaseCore dans votre UIApplicationDelegate, ainsi que tous les autres modules Firebase utilisés par le délégué de votre application. Par exemple, pour utiliser Cloud Firestore et Authentication :

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Swift

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. Configurez une FirebaseApp instance partagée dans la méthode application(_:didFinishLaunchingWithOptions:) du délégué de votre application :

    SwiftUI

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Swift

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. Si vous utilisez SwiftUI, vous devez créer un délégué d'application et l'associer à votre App structure via UIApplicationDelegateAdaptor ou NSApplicationDelegateAdaptor. Vous devez également désactiver le swizzling du délégué d'application. Pour en savoir plus, consultez les instructions SwiftUI.

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. Recompilez votre application.

Étape 2 : Générez des événements de performances pour l'affichage initial des données

Firebase commence à traiter les événements lorsque vous ajoutez le SDK à votre application. Si vous développez toujours en local, interagissez avec votre application pour générer des événements pour la collecte et le traitement initiaux des données.

  1. Continuez à développer votre application à l'aide d'un simulateur ou d'un appareil de test.

  2. Générez des événements en basculant votre application entre l'arrière-plan et le premier plan plusieurs fois, en interagissant avec votre application en naviguant entre les écrans et/ou en déclenchant des requêtes réseau.

  3. Accédez au tableau de bord Performance de la console Firebase. Vous devriez voir l'affichage initial de vos données au bout de quelques minutes.

    Si vous ne voyez pas l'affichage initial de vos données, consultez les conseils de dépannage.

Étape 3 : (Facultatif) Affichez les messages de journal pour les événements de performances

  1. Activez la journalisation du débogage comme suit :

    1. Dans Xcode (version 26.2 ou ultérieure), sélectionnez Product > Scheme > Edit scheme (Produit > Schéma > Modifier le schéma).
    2. Sélectionnez Run (Exécuter) dans le menu de gauche, puis sélectionnez l'onglet Arguments.
    3. Dans la section Arguments Passed on Launch (Arguments transmis au lancement), ajoutez -FIRDebugEnabled.
  2. Recherchez les éventuels messages d'erreur dans vos messages de journal.

  3. Performance Monitoring ajoute le tag Firebase/Performance à ses messages de journal afin que vous puissiez les filtrer.

  4. Recherchez les types de journaux suivants, qui indiquent que Performance Monitoring enregistre les événements de 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 les événements de performances, consultez les conseils de dépannage.

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

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

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

Dans votre code, vous définissez le début et la fin d'une trace de code personnalisée (et ajoutez les métriques personnalisées souhaitées) à l'aide de l'API fournie par le Performance Monitoring SDK.

Consultez Ajouter une surveillance pour un code spécifique pour en savoir plus sur ces fonctionnalités et sur la façon de les ajouter à votre application.

Étape 5 : Déployez votre application, puis examinez les résultats

Une fois que vous avez validé Performance Monitoring à l'aide du simulateur Xcode et d'un ou 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 sur les performances dans le tableau de bord de la Firebase console.

Problèmes connus

  • Performance Monitoring présente des problèmes de compatibilité connus avec GTMSQLite. Nous vous recommandons de ne pas utiliser Performance Monitoring avec les applications qui utilisent GTMSQLite.
  • Le swizzling de méthode après l'appel de FirebaseApp.configure() peut interférer avec le Performance Monitoring SDK.
  • Des problèmes connus avec le simulateur iOS 8.0-8.2 empêchent Performance Monitoring de capturer les événements de performances. Ces problèmes sont résolus dans le simulateur iOS 8.3 et les versions ultérieures.
  • Les connexions établies à l'aide de backgroundSessionConfiguration d'NSURLSession présentent des temps de connexion plus longs que prévu. Ces connexions sont exécutées hors processus et les délais reflètent les événements de rappel dans le processus.

Étapes suivantes