2015-10-29 19 views
6

Crashlytics è stato installato nell'app in questione per un paio di versioni ora. Sta funzionando alla grande.Crashlytics non segnala crash in modalità di rilascio

Ma mentre prepariamo la prossima versione Crashlytics ha smesso di segnalare arresti anomali in modalità di rilascio. Ecco le cose che posso pensare che sono cambiate dalla nostra ultima versione.

  • Xcode 7.1. L'ultima versione è stata preparata con Xcode 6.
  • Abbiamo eseguito l'aggiornamento a Fabric.
  • Stiamo testando l'app su iOS 9.1.

In ogni caso, con tutti questi cambiamenti, alcuni errori vengono comunque segnalati correttamente in Debug. Solo non in versione (installazione da TestFlight dopo l'archiviazione e il caricamento su iTunes Connect).

Qui ci sono le cose che ho controllato:

  • Sul sito Fabric l'applicazione è lì, la versione e sono lì. Quando clicco su DSMM mancanti mi dice che non ce ne sono mancanti.

  • startWithAPIKey viene chiamato in didFinishLaunchingWithOptions (aggiunto dopo la domanda di trojanfoe).

  • La chiave api è corretta. Controllato e ricontrollato.

  • Nello script di build non c'è (e mai è stato) una distinzione tra Debug e Release. Ecco come si presenta:

enter image description here

  • In Parametri di compilazione DEBUG_INFORMATION_FORMAT è già impostata su DWARF with dSYM File (aggiunta dopo la domanda di StormXX):

enter image description here

Che cosa mi manca ?

+0

Stai chiamando l'API dalla tua app delegato? – trojanfoe

+0

Sì. '[Crashlytics startWithAPIKey: @" a980b ... 'Buona domanda però. La aggiungerò all'elenco di controllo nella domanda –

+0

Ho lo stesso problema ... x ( – JohnyDgoode

risposta

6

Mike da Crashlytics e tessuto qui.

Con Fabric, l'inizializzazione di Crashlytics è leggermente cambiata. Si raccomanda inoltre

#import "AppDelegate.h" 
#import <Fabric/Fabric.h> 
#import <Crashlytics/Crashlytics.h> 

@interface AppDelegate() 

@end 

@implementation AppDelegate 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 
    // Override point for customization after application launch. 
    [Crashlytics startWithAPIKey:@"YourAPIKey"]; 
    // You can comment out the above line if you have your Twitter Fabric API key in your info.plist. 
    [Fabric with:@[[Crashlytics class]]]; 
    return YES; 
} 

Aggiornamento la fase di costruzione di script corsa al seguente:: utilizzando il seguente codice dovrebbe funzionare (Obj-C)

./Fabric.framework/run <YourAPIKey> <YourBuildSecret> 
+0

non dovrebbe essere avvisato quando aggiornamento automatico Crashlytics? In quale versione è stata cambiata? – jcesarmobile

+0

Dopo la migrazione a Fabric e l'aggiornamento a una versione più recente di Crashlytics SDK, ti verrà richiesto di cambiare lo script di esecuzione. Inoltre, con Fabric basato sul feedback di molti sviluppatori, quando cambiava il flusso di aggiornamento era completamente sotto il tuo controllo. Gli aggiornamenti non vengono applicati automaticamente. –

+0

Ho iniziato con il tessuto, ma il [Tessuto con ...] che mi è stato detto di usare era diverso da quello che hai menzionato. Non dovresti preoccuparti allora? – jcesarmobile

1

Ho incontrato lo stesso problema e ho sovle che ... Controllare configurazione Regolazione del progetto, trovare informazioni di debug Formato. cambiarlo nano con dSYM file

Image

+0

Grazie per il suggerimento.Ma le impostazioni di compilazione sono già impostate su 'DWARF con dSYM File'. –

+0

Ho modificato la mia domanda includeva quell'impostazione –

+0

ma non ho visto l'area Debug nell'impostazione di Build – Jaydip

5

Sono stato anche di fronte a questo problema.Le mie app I file DSYM non venivano caricati automaticamente su Fabric come era stato in precedenza. La causa principale è risultata essere che xcode 7.1 aveva impostato il progetto su Bitcode abilitato = YES

Impostazione Bitcode abilitato = NO nelle mie Impostazioni di costruzione ha risolto il problema del caricamento automatico.

dai tessuti avanzati istituiti document:

codice binario che ha consentito applicazioni sono tenuti a scaricare il loro dSYM da Xcode e poi caricarlo Crashlytics in modo che possiamo symbolicate il crash.

+0

risposta perfetta. – santhu

+0

Disabilitare il bitcode non è il modo giusto di risolvere il problema, è come "uccidere una mosca con un martello". Il bitcode è una grande funzionalità e dovresti usarlo. Se lo fai, dovresti scaricare il dSYM da iTunes Connect (o nell'organizer di Xcode) e caricarlo su Crashlytics - è così che aggiusti i simboli mancanti.) –

+0

@pallzoltan quali sono i vantaggi del bitcode? – Crashalot

0

Per me non ha aiutato il caricamento di file dsym da .xcarchive. Solo quando ho scaricato l'archivio zip dSYM dallo iTunesConnect e l'ho caricato su fabric - ha senso.

enter image description here enter image description here

Problemi correlati