2016-06-10 31 views
6

Ho aggiunto rapporti sugli arresti di Firebase al mio progetto iOS (aggiunto pod, aggiunto script di fase build, aggiunto json al progetto, ...). Quando eseguo la mia applicazione, vedo nella mia console:Segnalazione degli arresti di Firebase per iOS non invia arresti anomali nonostante il successo init

Firebase Crash Reporting: Successfully enabled 

Per il test, inserisco FatalError() nel mio codice dopo la mia FIRApp.configure) Codice ((come suggerito qui: https://firebase.google.com/docs/crash/ios#create_your_first_error).

Nessun rapporto di arresto anomalo viene inviato al prossimo avvio dell'app (che non si arresta in modo anomalo). Non vedo nulla nella mia console xcode e niente nella mia console web.

+1

L'app si arresta immediatamente all'avvio? In tal caso, ciò non funziona in quanto l'SDK ha bisogno di tempo per inviare l'arresto anomalo. – Kerni

risposta

13

Non una soluzione immediata, ma alcuni trucchi diagnostici che possono aiutare a localizzare il problema:

  • Assicurarsi che il debugger è DISABILI quando si genera l'incidente nel simulatore o dispositivo collegato, o il debugger catturerà l'incidente prima dell'FCR. Avvia l'app (⌘R) in Xcode, ferma il debugger (⌘.) In Xcode e riavvia l'app manualmente nel simulatore o sul dispositivo.
  • Se si utilizza il simulatore e si seguono le istruzioni di cui sopra, è necessario visualizzare i dump di arresto anomalo generati se si esegue il comando find ~/Library/Developer/CoreSimulator -path '*/FCRDumps/*.dmp' -ls (notare che verranno visualizzati anche arresti non elaborati da altre app di prova).
  • Se si vede uno o più file di dump con la data/ora corretta, è necessario eseguire il caricamento con successo al prossimo avvio dell'app. Rimuovere la riga fatalError(), quindi ricostruire e riavviare. I file .dmp in quel contenitore dovrebbero presto sparire, sostituiti dai file .crash (utilizzare find ~/Library/Developer/CoreSimulator -path '*/FCRCrashQueue/*.crash' -ls per trovarli). I file di arresto anomalo verranno eliminati uno alla volta dopo il loro caricamento.
+0

Questo non funziona per me. Non sto utilizzando cocoapods – rat

+4

Il rapporto di arresto anomalo funziona correttamente in modalità di debug. Quando distribuisco a TestFlight e l'app si arresta in modo anomalo, non viene generato alcun dato. È questo il comportamento previsto? – oyalhi

+0

Ho trovato 6 file '.dmp' ma non file' .crash'. Ho la mia app in esecuzione nel simulatore e non è collegata al debugger. L'ho eseguito con fatalError() e senza fatalError() ho ottenuto il 'Firebase Crash Reporting: abilitato abilitato' ma nessun rapporto nella mia Firebase Console :( – malhobayyeb