Hinweis
Falls noch nicht geschehen, fügen Sie Ihrem Apple-Projekt Firebase hinzu.
Schritt 1: Performance Monitoring in die App einfügen
Nachdem Sie das Performance Monitoring SDK hinzugefügt haben, beginnt Firebase automatisch mit der Erfassung von Daten für das Rendern von Bildschirmen in Ihrer App, von Daten zum Lebenszyklus Ihrer App (z. B. App-Startzeit) und von Daten für HTTP(S)-Netzwerkanfragen.
Verwenden Sie Swift Package Manager, um Firebase-Abhängigkeiten zu installieren und zu verwalten.
- Öffnen Sie Ihr App-Projekt und gehen Sie in Xcode zu File > Add Packages (Datei > Pakete hinzufügen).
- Fügen Sie bei entsprechender Aufforderung das Firebase Apple Platforms SDK-Repository hinzu:
- Wählen Sie die Performance Monitoring-Bibliothek aus.
- Fügen Sie das Flag
-ObjC
dem Abschnitt Other Linker Flags (Weitere Linker-Flags) der Build-Einstellungen Ihres Ziels hinzu. - Wenn Sie fertig, beginnt Xcode automatisch, Ihre Abhängigkeiten im Hintergrund aufzulösen und herunterzuladen.
https://github.com/firebase/firebase-ios-sdk.git
Konfigurieren Sie als Nächstes das Firebase-Modul:
- Importieren Sie das
FirebaseCore
-Modul in IhreUIApplicationDelegate
sowie alle anderen Firebase-Module, die von Ihrem App-Delegaten verwendet werden. So verwenden Sie beispielsweise 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; // ...
- Konfigurieren Sie eine freigegebene
FirebaseApp
-Instanz in der Methodeapplication(_:didFinishLaunchingWithOptions:)
des 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];
- Wenn Sie SwiftUI verwenden, müssen Sie ein Anwendungs-Delegate erstellen und es über
UIApplicationDelegateAdaptor
oderNSApplicationDelegateAdaptor
an IhreApp
-Struktur anhängen. Außerdem müssen Sie das Swizzling von 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() } } } }
-
Kompilieren Sie die App neu.
Schritt 2: 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.
Entwickeln Sie Ihre App mit einem Simulator oder Testgerät weiter.
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.
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 3: (Optional) Log-Nachrichten für Leistungsereignisse ansehen
Aktivieren Sie das Debug-Logging so:
- Wählen Sie in Xcode (mindestens Version 16.2) Product > Scheme > Edit scheme aus.
- Wählen Sie im Menü auf der linken Seite Ausführen und dann den Tab Argumente aus.
- Fügen Sie im Bereich Beim Start übergebene Argumente
-FIRDebugEnabled
hinzu.
Prüfen Sie Ihre Logmeldungen auf Fehlermeldungen.
Performance Monitoring kennzeichnet seine Logmeldungen mit
Firebase/Performance
, damit Sie Ihre Logmeldungen filtern können.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
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 4: (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.
Weitere Informationen zu diesen Funktionen und dazu, wie Sie sie in Ihre App einfügen, finden Sie hier.
Schritt 5: App bereitstellen und Ergebnisse ansehen
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 Dashboard zur Leistungsüberwachung der Firebase-Konsole einsehen.
Bekannte Probleme
- Performance Monitoring hat bekannte Kompatibilitätsprobleme mit GTMSQLite. Wir empfehlen, Performance Monitoring nicht mit Apps zu verwenden, die GTMSQLite nutzen.
- Method Swizzling nach dem Aufrufen von
FirebaseApp.configure()
kann die Funktion des 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 späteren 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
Sehen Sie sich das Performance Monitoring-iOS-Codebeispiel auf GitHub an und führen Sie es aus.
Weitere Informationen zu Daten, die automatisch von Performance Monitoring erhoben werden:
- Daten zum Lebenszyklus Ihrer App, z. B. die Startzeit der App
- Daten zum Bildschirm-Rendering in Ihrer App
- Daten für HTTP/S-Netzwerkanfragen, die von Ihrer App gesendet werden
Leistungsdaten in der Firebase-Konsole ansehen, verfolgen und filtern
Sie können die Überwachung für bestimmte Aufgaben oder Arbeitsabläufe in Ihrer App hinzufügen, indem Sie benutzerdefinierte Code-Traces instrumentieren.