Salta al contenuto principale

Firebase Crashlytics per le app Capacitor

Scopri come integrare la segnalazione dei crash in tempo reale nelle tue app mobili con una guida passo-passo per configurare Crashlytics su iOS e Android.

Firebase Crashlytics per app Capacitor Capgo illustrazione blog

Firebase Crashlytics ti aiuta a monitorare i crash dell'app in tempo reale, fornendo report dettagliati per risolvere i problemi rapidamente. Si integra perfettamente con Capacitor per app iOS e Android. Ecco cosa devi sapere:

  • Perché usare Crashlytics?

    • Ottieni alert sui crash in tempo reale.
    • Analizza report dettagliati sui crash con raggruppamento automatico dei problemi.
    • Monitora gli errori critici per mantenere le app stabili.
  • Requisiti di configurazione:

    • Installa Node.js (v16+), Capacitor (v4+), e strumenti come Xcode 14+ e Android Studio Electric Eel.
    • Scarica Firebase file di configurazione (GoogleService-Info.plist per iOS, google-services.json per Android).
    • Aggiorna i file specifici della piattaforma come Podfile (iOS) e build.gradle (Android).
  • Passaggi chiave:

    • Installa Crashlytics:

      npm install @capgo/capacitor-firebase-crashlytics && npx cap sync
    • Inizializza Crashlytics nella tua app:

      import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
      await FirebaseCrashlytics.initialize();
  • Testa la configurazione:

    • Genera un crash di test:

      await FirebaseCrashlytics.crash();
  • Consiglio extra: Combina Crashlytics con Capgo per aggiornamenti live immediati senza i ritardi degli app store.

Questa guida rende la tua app senza crash e user-friendly. Inizia configurando Firebase Crashlytics oggi stesso!

Guida Android 2021: Firebase Crashlytics - crash personalizzati …

Firebase Crashlytics

Requisiti di configurazione

Prima di iniziare, assicurati di aver completato i seguenti passaggi:

Software e account richiesti

Dovrai installare i seguenti elementi:

  • Node.js (v16 o superiore) e Capacitor (v4 o superiore)
  • Un Account Firebase con un progetto attivo
  • Xcode 14+ per lo sviluppo iOS
  • Android Studio Electric Eel o una versione più recente per lo sviluppo Android
  • L'ultima versione di CocoaPods (obbligatorio per iOS)

File di configurazione della piattaforma

Per iOS:

  • Scarica l'app GoogleService-Info.plist file dalla Firebase Console.
  • Aggiorna il tuo Podfile per includere le dipendenze di Crashlytics.
  • Aggiungi le chiavi di privacy necessarie al tuo Info.plist file.

Per Android:

  • Ottieni il google-services.json file dalla Firebase Console.
  • Apporta modifiche sia a livello di progetto sia a livello di app build.gradle file.
  • Aggiorna il AndroidManifest.xml per includere le autorizzazioni richieste.

Firebase Configurazione Console

Dashboard della piattaforma Firebase

Configura Firebase e abilita Crashlytics seguendo questi passaggi:

  1. Crea un progetto Firebase e abilita Crashlytics.

  2. Registra le tue app nella Firebase Console:

    • Usa il bundle ID per iOS e il nome del pacchetto per Android.
    • Scarica i file di configurazione: GoogleService-Info.plist (iOS) e google-services.json (Android).
  3. Integra gli SDK Firebase nella tua app aggiungendo queste dipendenze:

    Per Android (livello app build.gradle):

    dependencies {
        implementation platform('com.google.firebase:firebase-bom:32.0.0')
        implementation 'com.google.firebase:firebase-crashlytics'
        implementation 'com.google.firebase:firebase-analytics'
    }

    Per iOS (Podfile):

    pod 'Firebase/Crashlytics'
    pod 'Firebase/Analytics'

Una volta completati questi passaggi, sei pronto per passare alla sezione Installazione del Plugin.

Passaggi per l'installazione

Installazione del Plugin

Poi, sincronizza il plugin con le tue piattaforme native e consulta la @capgo/capacitor-firebase-crashlytics pagina del plugin per il riferimento completo di API:

npm install @capgo/capacitor-firebase-crashlytics && npx cap sync

Poi, inizializza Crashlytics nella tua app. Aggiungi il seguente code a app.component.ts oppure main.ts:

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.initialize();

Configurazione della piattaforma

Configura le impostazioni richieste per le piattaforme Android e iOS.

Configurazione Android

  1. Aggiungi il plugin Gradle di Crashlytics al tuo file build.gradle dell'app:

    buildscript { 
        dependencies { 
            classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.5' 
        } 
    }
    apply plugin: 'com.google.firebase.crashlytics'
  2. Abilita la raccolta dei crash in AndroidManifest.xml:

    <meta-data
        android:name="firebase_crashlytics_collection_enabled"
        android:value="true" />

Setup iOS

  1. Configura Firebase in AppDelegate.swift:

    import Firebase
    FirebaseApp.configure()

Test del setup

Verifica che Crashlytics funzioni eseguendo un crash di test e controllando la Firebase Console:

  • Innesca un crash di test con una chiave personalizzata:

    await FirebaseCrashlytics.setCustomKey({key: 'test_scenario', value: 'manual_crash'});
    await FirebaseCrashlytics.crash();
  • Facoltativamente, identifica un utente:

    await FirebaseCrashlytics.setUserId({userId: 'user123'});
  • Registra eventi personalizzati:

    await FirebaseCrashlytics.log({message: 'Test crash triggered'});

I report, inclusi stack trace, dettagli del dispositivo e chiavi personalizzate, dovrebbero apparire nella Firebase Console entro circa 5 minuti.

Importante: Rimuovi le chiamate di crash prima di rilasciare l'app. Per disabilitare la raccolta dei crash durante lo sviluppo, usa:

await FirebaseCrashlytics.setCrashlyticsCollectionEnabled({enabled: false});

Guida al monitoraggio

Dopo aver verificato la configurazione con un crash di test, usa la Firebase Console per monitorare crash ed errori reali nella tua app in produzione.

Lettura dei report di crash

Puoi trovare i report dei crash nella Firebase Console, nella sezione Crashlytics. Ecco cosa vedrai:

  • Utenti senza crash: La percentuale di utenti che non hanno riscontrato crash.
  • Stabilità delle issue: Con quale frequenza si verificano i crash.
  • Analisi dell'impatto: Il numero di utenti interessati.

Fai clic su qualsiasi issue per approfondire dettagli come stack trace, informazioni sul dispositivo (es. versione OS, memoria), chiavi personalizzate, logs e il percorso dell'utente che ha portato al crash.

Consiglio: Abilita la funzione “velocity alerts” per ricevere notifiche quando i tassi di crash aumentano improvvisamente. Questo può aiutarti a risolvere i problemi prima che colpiscano troppi utenti.

Consigli per la gestione degli errori

  • Priorizza per impatto: Concentrati sui crash che colpiscono più utenti o che si verificano in parti critiche della tua app. Monitorare le tendenze può aiutarti a identificare problemi urgenti.

  • Usa chiavi personalizzate: Aggiungi contesto ai report di crash con chiavi personalizzate. Ad esempio:

    await FirebaseCrashlytics.setCustomKey({
      key: 'current_view',
      value: 'payment_processing'
    });
  • Raggruppa problemi simili: Sfrutta il raggruppamento automatico dei problemi di Firebase. Puoi anche taggare i crash correlati con chiavi personalizzate coerenti e usare titoli chiari e descrittivi per semplificare il tracciamento.

Protezione della privacy degli utenti

Per garantire la conformità e proteggere i dati degli utenti, segui queste linee guida:

  • Permessi:

    • Menziona il crash reporting nella tua informativa sulla privacy.
    • Ottieni il consenso degli utenti per la raccolta dati nelle regioni soggette al GDPR.
    • Fornisci agli utenti un'opzione per disattivare il crash reporting.
  • Controlli sulla raccolta dati:

    await FirebaseCrashlytics.setCrashlyticsCollectionEnabled({enabled: false});
    await FirebaseCrashlytics.setCrashlyticsCollectionEnabled({enabled: true});
  • Conservazione dei dati:

    • Configura l'eliminazione automatica dei dati dopo 90 giorni.
    • Rimuovi le informazioni sensibili dai tuoi report.
    • Usa chiavi personalizzate non identificabili per tutelare la privacy degli utenti durante il debugging.

Capgo Integrazione

Capgo Live Update Interfaccia Dashboard

Ottimizza il flusso dal rilevamento del crash al deploy della fix abbinando il sistema live update di Capgo a Crashlytics.

Su Capgo

Capgo è uno strumento live update progettato specificamente per app Capacitor. Con oltre 1.900 app in produzione e un tasso di aggiornamento del 95% entro 24 ore, garantisce fix rapide senza i ritardi delle approvazioni degli App Store [1].

Le funzionalità principali includono:

  • Crittografia end-to-end per aggiornamenti sicuri
  • Rollback con un click alle versioni precedenti
  • Distribuzione basata su Channel per release mirate
  • Integrazione CI/CD fluida
  • Un Piattaforma 100% open-source

Crashlytics e Capgo insieme

Usare Crashlytics con Capgo crea un flusso di lavoro efficiente per identificare e risolvere rapidamente i problemi.

Ecco come funziona:

  1. Rilevamento e gestione dei crash
    Crashlytics identifica un crash e Capgo ti consente di distribuire correzioni istantaneamente, senza attendere l'approvazione degli store.

  2. Update mirati

    • Test beta: Testa i fix con un gruppo specifico per assicurarne l'efficacia.
    • Rilascio graduale: Distribuisci gli update gradualmente per ridurre i rischi.
    • Fix di emergenza: Distribuisci rapidamente patch critiche per risolvere problemi urgenti.
  3. Monitoraggio e verifica
    Dopo aver distribuito gli update con Capgo, usa Crashlytics per monitorare il crash rate e confermare la risoluzione del problema.

Sicurezza e regole App Store

Capgo rispetta le policy di Apple e Google offrendo solide funzionalità di sicurezza:

  • Tasso di successo globale dell'82% nella distribuzione degli update [1]
  • Controllo automatico delle versioni per una migliore organizzazione
  • Conformità alle linee guida live update degli app store

Per un'integrazione sicura con Crashlytics:

  • Enable error tracking in both systems.
  • Usa gli strumenti di monitoraggio di Capgo insieme ai report di Crashlytics.
  • Gestisci il versioning di tutti gli aggiornamenti.
  • Conserva log dettagliati degli aggiornamenti per fini di audit.

Continua alla sezione Plugin Options per esplorare altri strumenti di live update.

Opzioni del plugin

Scegliere il plugin di crash reporting giusto può influenzare notevolmente come identifichi e correggi gli errori nella tua app.

Ecco un rapido confronto tra Crashlytics e altri strumenti di error reporting popolari per Capacitor:

  • SentryOffre un piano gratuito con piani a pagamento a partire da 26 $/mese. Supporta oltre 30 piattaforme e fornisce il monitoraggio degli errori in tempo reale con un contesto dettagliato.
  • Bugsnag: A partire da 47 $/mese. Copre sia le piattaforme mobile che web, con raggruppamento automatico degli errori e tracciamento delle release.
  • Rollbar: A partire da 31 $/mese. Funziona su più piattaforme, con funzionalità come deployment tracking e person tracking.

Crashlytics è particolarmente interessante per i team che utilizzano già Firebase, grazie alla sua integrazione fluida e al piano gratuito.

Riassunto

Ecco un rapido riepilogo di ciò che hai realizzato e di cosa viene dopo:

Riassunto dei passaggi di setup

Hai completato tre passaggi chiave per iniziare:

  • Hai creato un progetto Firebase e registrato le tue app iOS/Android.
  • Hai installato e configurato il plugin Crashlytics.
  • Hai aggiornato i file di piattaforma iOS e Android necessari.

Perché integrare questi strumenti?

Abbinare Firebase Crashlytics a Capgo ti offre un sistema potente per il tracciamento degli errori e gestione degli update. Ecco cosa offre questa combinazione:

  • Correzioni rapide: Spingi aggiornamenti istantanei e annulla le modifiche con un solo clic.
  • Rollout affidabili: Assicurati che gli aggiornamenti siano ampiamente adottati e consegnati senza intoppi agli utenti.

Cosa fare ora?

  1. Attiva le analisi dettagliate dei crash nella Firebase Console.
  2. Aggiungi Capgo alla tua pipeline CI/CD per aggiornamenti più snelli.
  3. Usa canali Capgo per testare e rilasciare le correzioni passo dopo passo.

Con Crashlytics e Capgo configurati, sei pronto a mantenere la tua app stabile e a migliorarla nel tempo.

Continua con Firebase Crashlytics per app Capacitor

Se stai usando Firebase Crashlytics per le app Capacitor per pianificare il lavoro sui plugin nativi, collegalo a Directory dei plugin di Capgo per il workflow del prodotto nella Capgo Plugin Directory, Plugin Capacitor di Capgo per i dettagli di implementazione in Capacitor Plugins di Capgo, Aggiunta o aggiornamento dei plugin per i dettagli sull'implementazione in Adding or Updating Plugins, Alternative ai plugin Ionic Enterprise per il workflow del prodotto in Ionic Enterprise Plugin Alternatives, e Capgo Native Build per il workflow di prodotto in Capgo Native Builds.

Live updates per le app Capacitor

Quando un bug nel web-layer è live, rilascia la fix tramite Capgo invece di aspettare giorni l'approvazione degli store. Gli utenti ricevono l'update in background, mentre le modifiche native restano nel normale processo di review.

Ultimi articoli dal blog

Capgo ti offre gli insight migliori che ti servono per creare un'app mobile davvero professionale.