Prima di iniziare
Se non l'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 per il rendering delle schermate della tua app, i dati relativi al ciclo di vita della tua app (come l'ora di inizio dell'app) e i dati per le 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 > Add Packages (File > Aggiungi pacchetti).
- Quando richiesto, aggiungi il repository dell'SDK delle piattaforme Apple di Firebase:
- Scegli la libreria Performance Monitoring.
- Aggiungi il flag
-ObjCalla sezione Other Linker Flags (Altri flag del linker) delle impostazioni di build 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
Poi, configura il modulo Firebase:
- Importa il modulo
FirebaseCorenel tuoUIApplicationDelegate, nonché tutti gli altri moduli Firebase utilizzati dal tuo delegato dell'app. 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
FirebaseAppnel metodoapplication(_:didFinishLaunchingWithOptions:)del tuo 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 struttura
ApptramiteUIApplicationDelegateAdaptoroNSApplicationDelegateAdaptor. Devi anche disattivare lo swizzling 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 relativi alle prestazioni per la visualizzazione iniziale dei dati
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 dei dati iniziale e l'elaborazione.
Continua a sviluppare la tua app utilizzando un simulatore o un dispositivo di test.
Genera eventi passando più volte l'app dallo sfondo al primo piano, interagendo con l'app tramite la navigazione tra le schermate e/o attivando richieste di rete.
Vai alla dashboard Prestazioni della console Firebase. Dovresti visualizzare i dati iniziali entro pochi minuti.
Se non vedi una visualizzazione dei dati iniziali, consulta i suggerimenti per la risoluzione dei problemi.
Passaggio 3: (facoltativo) visualizza i messaggi di log per gli eventi relativi alle prestazioni
Attiva il logging di debug nel seguente modo:
- In Xcode (v26.2 o successive), seleziona Product (Prodotto) > Scheme (Schema) > Edit scheme (Modifica schema).
- Seleziona Run (Esegui) dal menu a sinistra, poi la scheda Arguments (Argomenti).
- Nella sezione Arguments Passed on Launch (Argomenti passati al momento dell'avvio), aggiungi
-FIRDebugEnabled.
Controlla i messaggi di log per verificare la presenza di eventuali messaggi di errore.
Performance Monitoring contrassegna i messaggi di log con
Firebase/Performancein modo da poterli filtrare.Cerca i seguenti tipi di log che indicano che Performance Monitoring sta registrando eventi relativi alle prestazioni:
Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URLLogging network request trace: URL
Fai clic sull'URL per visualizzare i dati nella console Firebase. L'aggiornamento dei dati nella dashboard potrebbe richiedere alcuni istanti.
Se la tua app non registra eventi relativi alle prestazioni, consulta i suggerimenti per la risoluzione dei problemi.
Passaggio 4: (facoltativo) aggiungi il monitoraggio personalizzato per un codice specifico
Per monitorare i dati sul rendimento associati a un codice specifico nella tua app, puoi strumentare le tracce codice personalizzato.
Con una traccia del codice personalizzato, 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 database. La metrica predefinita per una traccia del codice personalizzato è la sua durata, ma puoi anche aggiungere metriche personalizzate, come successi della cache e avvisi di memoria.
Nel codice, definisci l'inizio e la fine di una traccia del codice personalizzato (e aggiungi le metriche personalizzate che preferisci) utilizzando l'API fornita dall'SDK Performance Monitoring.
Consulta Aggiungi il monitoraggio per un codice specifico per scoprire di più su queste funzionalità e su come aggiungerle alla tua app.
Passaggio 5: esegui il deployment dell'app, quindi esamina i risultati
Dopo aver convalidato Performance Monitoring utilizzando il simulatore Xcode e uno o più dispositivi di test, puoi eseguire il deployment della versione aggiornata della tua app per gli utenti.
Puoi monitorare i dati sul rendimento nella dashboard Prestazioni della console Firebase.
Problemi noti
- Performance Monitoring presenta problemi di compatibilità noti con GTMSQLite. Ti consigliamo di non utilizzare Performance Monitoring con app che utilizzano GTMSQLite.
- Lo swizzling del metodo dopo la chiamata a
FirebaseApp.configure()potrebbe interferire con l'SDK Performance Monitoring. - I problemi noti del simulatore iOS 8.0-8.2 impediscono a Performance Monitoring di acquisire gli eventi relativi alle prestazioni. Questi problemi sono stati risolti nel simulatore iOS 8.3 e versioni successive.
- Le connessioni stabilite utilizzando
backgroundSessionConfigurationdi NSURLSession mostreranno tempi di connessione più lunghi del previsto. Queste connessioni vengono eseguite out-of-process e le tempistiche riflettono gli eventi di callback in-process.
Passaggi successivi
Esamina ed esegui l'esempio di codice iOS Performance Monitoring su GitHub.
Scopri di più sui dati raccolti automaticamente da Performance Monitoring:
- Dati relativi al ciclo di vita dell'app, ad esempio ora di avvio 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 per attività o flussi di lavoro specifici nella tua app strumentando le tracce di codice personalizzate.