Catch up on highlights from Firebase at Google I/O 2023. Learn more

Inizia con il monitoraggio delle prestazioni per le piattaforme Apple

Prima di iniziare

Se non l'hai già fatto, aggiungi Firebase al tuo progetto Apple .

Passaggio 1 : aggiungi il monitoraggio delle prestazioni alla tua app

Dopo aver aggiunto l'SDK Performance Monitoring, Firebase avvia automaticamente la raccolta dei dati per il rendering dello schermo 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.

  1. In Xcode, con il progetto dell'app aperto, vai a File > Add Packages .
  2. Quando richiesto, aggiungi il repository SDK delle piattaforme Firebase Apple:
  3.   https://github.com/firebase/firebase-ios-sdk
  4. Scegli la libreria Monitoraggio delle prestazioni.
  5. Al termine, Xcode inizierà automaticamente a risolvere e scaricare le tue dipendenze in background.

Successivamente, configura il modulo Firebase:

  1. Importa il modulo FirebaseCore nel tuo UIApplicationDelegate , così come qualsiasi altro modulo Firebase utilizzato dal delegato dell'app. Ad esempio, per utilizzare Cloud Firestore e l'autenticazione:

    SwiftUI

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

    Rapido

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Obiettivo-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. Configura un'istanza condivisa FirebaseApp nel metodo application(_:didFinishLaunchingWithOptions:) del delegato dell'app:

    SwiftUI

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

    Rapido

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

    Obiettivo-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. Se utilizzi SwiftUI, devi creare un delegato dell'applicazione e allegarlo alla struttura App tramite UIApplicationDelegateAdaptor o NSApplicationDelegateAdaptor . È inoltre necessario disabilitare lo scorrimento del delegato dell'app. Per ulteriori informazioni, consulta le istruzioni 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. Ricompila la tua app.

Passaggio 2 : generare eventi di 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 e l'elaborazione iniziale dei dati.

  1. Continua a sviluppare la tua app utilizzando un simulatore o un dispositivo di test.

  2. Genera eventi spostando più volte la tua app dallo sfondo al primo piano, interagendo con la tua app navigando tra le schermate e/o attivando richieste di rete.

  3. Vai alla dashboard delle prestazioni della console Firebase. Dovresti visualizzare i dati iniziali entro pochi minuti.

    Se non visualizzi i dati iniziali, consulta i suggerimenti per la risoluzione dei problemi .

Passaggio 3 : (facoltativo) visualizzare i messaggi di registro per gli eventi relativi alle prestazioni

  1. Abilita la registrazione di debug, come segue:

    1. In Xcode (versione minima 14.1), seleziona Prodotto > Schema > Modifica schema .
    2. Seleziona Esegui dal menu a sinistra, quindi seleziona la scheda Argomenti .
    3. Nella sezione Argomenti trasmessi all'avvio , aggiungi -FIRDebugEnabled .
  2. Controlla i tuoi messaggi di registro per eventuali messaggi di errore.

  3. Il monitoraggio delle prestazioni contrassegna i suoi messaggi di registro con Firebase/Performance in modo da poter filtrare i messaggi di registro.

  4. Verificare la presenza dei seguenti tipi di log che indicano che il monitoraggio delle prestazioni sta registrando gli eventi delle prestazioni:

    • Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. Fai clic sull'URL per visualizzare i tuoi dati nella console Firebase. L'aggiornamento dei dati nella dashboard potrebbe richiedere alcuni istanti.

Se la tua app non registra gli eventi relativi alle prestazioni, consulta i suggerimenti per la risoluzione dei problemi .

Passaggio 4 : (facoltativo) aggiungere il monitoraggio personalizzato per codice specifico

Per monitorare i dati sulle prestazioni associati a un codice specifico nella tua app, puoi instrumentare tracce di codice personalizzate .

Con una traccia del codice personalizzata, puoi misurare quanto tempo impiega la tua app per completare un'attività specifica o una serie di attività, come il caricamento di una serie di immagini o l'esecuzione di query sul database. La metrica predefinita per una traccia del codice personalizzata è la sua durata, ma puoi anche aggiungere metriche personalizzate, ad esempio riscontri nella cache e avvisi di memoria.

Nel tuo codice, definisci l'inizio e la fine di una traccia del codice personalizzato (e aggiungi le metriche personalizzate desiderate) utilizzando l'API fornita dall'SDK di monitoraggio delle prestazioni.

Visita Aggiungi monitoraggio per codice specifico per saperne di più su queste funzionalità e su come aggiungerle alla tua app.

Passaggio 5 : distribuisci la tua app, quindi esamina i risultati

Dopo aver convalidato il monitoraggio delle prestazioni utilizzando il simulatore Xcode e uno o più dispositivi di test, puoi distribuire la versione aggiornata della tua app ai tuoi utenti.

Puoi monitorare i dati sulle prestazioni nella dashboard Prestazioni della console Firebase.

Problemi conosciuti

  • Il monitoraggio delle prestazioni presenta problemi di compatibilità noti con GTMSQLite. Si consiglia di non utilizzare il monitoraggio delle prestazioni con le app che utilizzano GTMSQLite.
  • Lo scorrimento del metodo dopo aver chiamato FirebaseApp.configure() potrebbe interferire con l'SDK di monitoraggio delle prestazioni.
  • I problemi noti con il simulatore iOS 8.0-8.2 impediscono al monitoraggio delle prestazioni di acquisire gli eventi delle prestazioni. Questi problemi sono stati risolti nel simulatore iOS 8.3 e nelle versioni successive.
  • Le connessioni stabilite utilizzando backgroundSessionConfiguration di NSURLSession presenteranno tempi di connessione più lunghi del previsto. Queste connessioni vengono eseguite out-of-process e le tempistiche riflettono gli eventi di callback in-process.

Prossimi passi