Erste Schritte mit der Leistungsüberwachung für Apple-Plattformen

Hinweis

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

Schritt 1: Performance Monitoring zu Ihrer App hinzufügen

Nachdem Sie das Performance Monitoring SDK hinzugefügt haben, erhebt Firebase automatisch Daten zum Bildschirm-Rendering Ihrer App, Daten zum Lebenszyklus Ihrer App (z. B. zur Startzeit der App) und Daten zu HTTP/S-Netzwerkanfragen.

Verwenden Sie Swift Package Manager, um Firebase-Abhängigkeiten zu installieren und zu verwalten.

  1. Öffnen Sie Ihr App-Projekt und gehen Sie in Xcode zu File > Add Packages (Datei > Pakete hinzufügen).
  2. Fügen Sie bei entsprechender Aufforderung das Firebase Apple Platforms SDK-Repository hinzu:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. Wählen Sie die Performance Monitoring-Bibliothek aus.
  5. Fügen Sie das Flag -ObjC im Bereich Other Linker Flags (Weitere Verknüpfungsmerker) der Build-Einstellungen Ihres Ziels hinzu.
  6. Wenn Sie fertig, beginnt Xcode automatisch, Ihre Abhängigkeiten im Hintergrund aufzulösen und herunterzuladen.

Konfigurieren Sie als Nächstes das Firebase-Modul:

  1. Importieren Sie das FirebaseCore Modul in Ihr UIApplicationDelegate, sowie alle anderen Firebase-Module, die Ihr App-Delegat verwendet. Beispiel für die Verwendung von Cloud Firestore und 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. Konfigurieren Sie eine FirebaseApp freigegebene Instanz in der application(_:didFinishLaunchingWithOptions:) Methode Ihres App-Delegaten:

    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. Wenn Sie SwiftUI verwenden, müssen Sie einen App-Delegaten erstellen und ihn an Ihre App Struktur über UIApplicationDelegateAdaptor oder NSApplicationDelegateAdaptor anhängen. Außerdem müssen Sie das Swizzling des App-Delegaten deaktivieren. Weitere Informationen finden Sie in der SwiftUI-Anleitung.

    SwiftUI

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

Schritt 2: 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. Entwickeln Sie Ihre App mit einem Simulator oder Testgerät weiter.

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

  3. Rufen Sie das Performance Dashboard der Firebase Console 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 3: (Optional) Logmeldungen für Leistungsereignisse ansehen

  1. Aktivieren Sie das Debug-Logging so:

    1. Wählen Sie in Xcode (mindestens Version 16.2) Product > Scheme > Edit scheme aus.
    2. Wählen Sie im Menü auf der linken Seite Run (Ausführen) und dann den Tab Arguments (Argumente) aus.
    3. Fügen Sie im Bereich Arguments Passed on Launch (Beim Start übergebene Argumente) -FIRDebugEnabled hinzu.
  2. Prüfen Sie Ihre Logmeldungen auf Fehlermeldungen.

  3. Performance Monitoring kennzeichnet seine Logmeldungen mit Firebase/Performance, damit Sie Ihre Logmeldungen filtern können.

  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 anzusehen. 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 4: (Optional) Benutzerdefiniertes Monitoring 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 benötigt, um eine bestimmte Aufgabe oder eine bestimmte Anzahl von Aufgaben auszuführen, z. B. eine Reihe von Bildern zu laden oder Ihre Datenbank abzufragen. Die Standardmessung für einen benutzerdefinierten Code-Trace ist seine Dauer. Sie können aber auch benutzerdefinierte Messungen 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 Messungen hinzu. Dazu verwenden Sie die API, die vom Performance Monitoring SDK bereitgestellt wird.

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

Schritt 5: App bereitstellen und Ergebnisse prüfen

Nachdem Sie Performance Monitoring mit dem Xcode-Simulator und 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 erfassen.

Bekannte Probleme

  • Performance Monitoring hat bekannte Kompatibilitätsprobleme mit GTMSQLite. Wir empfehlen, Performance Monitoring nicht mit Performance Monitoring zu verwenden, die GTMSQLite verwenden.
  • Das Swizzling von Methoden nach dem Aufruf von FirebaseApp.configure() kann das Performance Monitoring SDK beeinträchtigen.
  • Bekannte Probleme mit dem iOS 8.0–8.2-Simulator verhindern, dass Performance Monitoring Leistungsereignisse erfasst. Diese Probleme wurden im iOS 8.3-Simulator und in höheren Versionen behoben.
  • Verbindungen, die mit backgroundSessionConfiguration von NSURLSession hergestellt werden, haben längere Verbindungszeiten als erwartet. Diese Verbindungen werden außerhalb des Prozesses ausgeführt und die Zeitangaben spiegeln In-Process-Callback-Ereignisse wider.

Nächste Schritte