Prima di iniziare
Se non lo hai già fatto, aggiungi Firebase al tuo progetto Apple.
Passaggio 1: aggiungi Performance Monitoring alla tua app
Dopo aver aggiunto l'SDK Performance Monitoring, Firebase inizia automaticamente a raccogliere i dati relativi al rendering della schermata dell'app, i dati relativi al ciclo di vita dell'app (ad esempio l'ora di avvio dell'app) e i dati relativi alle richieste di rete HTTP/S.
Utilizza Swift Package Manager per installare e gestire le dipendenze di Firebase.
- In Xcode, con il progetto dell'app aperto, vai a File > Aggiungi pacchetti.
- Quando richiesto, aggiungi il repository dell'SDK delle piattaforme Apple di Firebase:
- Scegli la raccolta Performance Monitoring.
- Aggiungi il flag
-ObjC
alla sezione Altri flag del linker delle impostazioni di compilazione del target. - Al termine, Xcode inizierà automaticamente a risolvere e a scaricare le tue dipendenze in background.
https://github.com/firebase/firebase-ios-sdk.git
A questo punto, configura il modulo Firebase:
- Importa il modulo
FirebaseCore
inUIApplicationDelegate
, nonché eventuali altri moduli Firebase utilizzati dal tuo app delegate. Ad esempio, per utilizzare Cloud Firestore e 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; // ...
- Configura un'istanza condivisa
FirebaseApp
nel metodoapplication(_:didFinishLaunchingWithOptions:)
del delegato dell'app: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];
- Se utilizzi SwiftUI, devi creare un delegato dell'applicazione e collegarlo alla struct
App
tramiteUIApplicationDelegateAdaptor
oNSApplicationDelegateAdaptor
. Devi anche disattivare lo scambio del delegato dell'app. Per maggiori informazioni, consulta le istruzioni di SwiftUI.SwiftUI
@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
-
Ricompila l'app.
Passaggio 2: genera eventi sul rendimento per la visualizzazione dei dati iniziali
Firebase inizia a elaborare gli eventi quando aggiungi correttamente l'SDK alla tua app. Se stai ancora sviluppando localmente, interagisci con la tua app per generare eventi per la raccolta ed elaborazione iniziale dei dati.
Continua a sviluppare l'app utilizzando un simulatore o un dispositivo di test.
Genera eventi spostando l'app tra primo piano e sfondo diverse volte, interagendo con l'app spostandoti tra le schermate e/o attivando richieste di rete.
Vai alla dashboard Rendimento della console Firebase. Dovresti visualizzare i dati iniziali entro qualche minuto.
Se non visualizzi i dati iniziali, consulta i suggerimenti per la risoluzione dei problemi.
Passaggio 3: (Facoltativo) visualizza i messaggi di log per gli eventi di rendimento
Attiva il logging di debug nel seguente modo:
- In Xcode (versione minima 15.2), seleziona Prodotto > Schema > Modifica schema.
- Seleziona Esegui dal menu a sinistra e poi la scheda Argomenti.
- Nella sezione Argomenti passati al momento dell'avvio, aggiungi
-FIRDebugEnabled
.
Controlla se nei messaggi di log sono presenti messaggi di errore.
Performance Monitoring contrassegna i messaggi di log con
Firebase/Performance
in modo da poterli filtrare.Controlla la presenza dei seguenti tipi di log che indicano che Performance Monitoring sta registrando eventi relativi alle prestazioni:
Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
Logging network request trace: URL
Fai clic sull'URL per visualizzare i dati nella console Firebase. Potrebbero essere necessari alcuni momenti per l'aggiornamento dei dati nella dashboard.
Se la tua app non registra gli eventi sul rendimento, consulta i suggerimenti per la risoluzione dei problemi.
Passaggio 4: (Facoltativo) aggiungi il monitoraggio personalizzato per un codice specifico
Per monitorare i dati sulle prestazioni associati a codice specifico nella tua app, puoi instrumentare le tracce di codice personalizzato.
Con una traccia di codice personalizzata, puoi misurare il tempo necessario alla tua app per completare un'attività o un insieme di attività specifiche, ad esempio il caricamento di un insieme di immagini o l'esecuzione di query sul tuo database. La metrica predefinita per una traccia di codice personalizzato è la durata, ma puoi anche aggiungere metriche personalizzate, come hit della cache e avvisi di memoria.
Nel codice, definisci l'inizio e la fine di una traccia di codice personalizzata (e aggiungi le metriche personalizzate che preferisci) utilizzando l'API fornita dall'SDK Performance Monitoring.
Consulta Aggiungere il monitoraggio per codice specifico per scoprire di più su queste funzionalità e su come aggiungerle alla tua app.
Passaggio 5: esegui il deployment dell'app e poi esamina i risultati
Dopo aver convalidato Performance Monitoring utilizzando il simulatore Xcode e uno o più dispositivi di test, puoi implementare la versione aggiornata dell'app per gli utenti.
Puoi monitorare i dati sul rendimento nella dashboard Rendimento della console Firebase.
Problemi noti
- Performance Monitoring presenta problemi noti di compatibilità con GTMSQLite. Ti consigliamo di non utilizzare Performance Monitoring con le app che utilizzano GTMSQLite.
- Lo scambio di metodi dopo la chiamata a
FirebaseApp.configure()
potrebbe interferire con l'SDK Performance Monitoring. - Problemi noti con il simulatore iOS 8.0-8.2 impediscono a Performance Monitoring di acquisire gli eventi di rendimento. Questi problemi sono stati risolti nel Simulatore iOS 8.3 e nelle versioni successive.
- Le connessioni stabilite utilizzando
backgroundSessionConfiguration
di NSURLSession avranno tempi di connessione più lunghi del previsto. Queste connessioni vengono eseguite al di fuori del processo e i tempi riflettono gli eventi di callback in-process.
Passaggi successivi
Rivedi ed esegui il codice di esempio per iOS di Performance Monitoring su GitHub.
Scopri di più sui dati raccolti automaticamente da Performance Monitoring:
- Dati relativi al ciclo di vita dell'app, ad esempio l'ora di inizio dell'app
- Dati per il rendering dello schermo nella tua app
- Dati relativi alle richieste di rete HTTP/S inviate dalla tua app
Visualizza, monitora e filtra i dati sul rendimento nella console Firebase.
Aggiungi il monitoraggio di attività o flussi di lavoro specifici nella tua app strumentando le tracce di codice personalizzato.