Impossibile completare l'invio di dSYM durante la migrazione da fabric a firebase per crashlytics


12

Sto usando xcode11 con mac os 10.14.1. Ho implementato la migrazione da fabric a firebase usando i seguenti documenti.

https://medium.com/@niamhpower/the-great-migration-moving-from-fabric-to-firebase-as-an-ios-developer-7b61a8b40008

E ho generato codice per il test di crash, ma questo rapporto di crash non può essere visualizzato nella console crashlytics firebase. Ho usato il seguente documento per questa implementazione

https://firebase.google.com/docs/crashlytics/force-a-crash?platform=ios

Ho anche aggiunto il seguente script di esecuzione nelle fasi di compilazione di Xcode

"$ {PODS_ROOT} / Fabric / upload-simboli" -gsp "$ {PROJECT_DIR} /GoogleService-Info.plist" -p ios "$ {DWARF_DSYM_FOLDER_PATH} / $ {DWARF_DSYM_FILE_NAME}"

Ma questo restituirà il seguente errore quando eseguo l'applicazione.

31merror: impossibile completare l'invio di dSYM in /Users/macmini1/Library/Developer/Xcode/DerivedData/app_name-dnzsvdsxebmfqjbjecjlyhdzwags/Build/Products/Debug-iphonesimulator/err_name.appcr.modominio.errore Nome utente -domain.process-dsym Code = 3 "Il file non esiste più in (null)" UserInfo = {NSLocalizedFailureReason = Il file non esiste più in (null)} [0m Command PhaseScriptExecution non riuscito con un codice di uscita diverso da zero

La prego di aiutarmi come risolvere questo problema


Stai ancora riscontrando il problema. Firebase con un OMG che stava spingendo gli sviluppatori a caricare i dSYMs
Zubair,

ciao, sono bloccato sullo stesso problema, hai avuto fortuna con esso? La risposta di @ weet1988 non ha risolto il mio problema (è già l'ultimo script in esecuzione nel mio caso)
mikey,

1
@mikey Ho eliminato lo script dallo script di esecuzione e di nuovo aggiunto e chiuso anche xcode. Quindi ho provato a eseguire di nuovo
Funzionerà

In realtà ho fatto funzionare Crashlytics senza la upload-symbolssceneggiatura. Ho appena aggiornato i pod alle ultime versioni disponibili e mi sono assicurato che $ {PODS_ROOT}/Fabric/runfosse l'ultimo a essere eseguito. Grazie per la tua risposta @IKKA
mikey,

@mikey Volevi dire che stai usando solo $ {PODS_ROOT} / comando Fabric / run in runscript; destra?
IKKA

Risposte:


5

Ho avuto lo stesso problema. Il motivo era che lo script "$ {PODS_ROOT} / Fabric / run" non era l'ultimo nell'elenco degli script in Build Phases. La sceneggiatura è durata e tutto è andato bene.


2
la mia sceneggiatura è l'ultima ma ho ancora questo errore ...
Danpe,

5

Ho risolto aggiungendo il findcomando. Aggiungi il comando find sopra i simboli di upload

Esempio :

trova "$ {DWARF_DSYM_FOLDER_PATH}" -name "* .dSYM" | xargs -I {} $ PODS_ROOT / Fabric / upload-simboli -gsp "$ {PROJECT_DIR} /MyApp/GoogleService-Info.plist" -p ios {}

"$ {PODS_ROOT} / Fabric / upload-simboli" -gsp "$ {PROJECT_DIR} /MyApp/GoogleService-Info.plist" -p ios "$ {DWARF_DSYM_FOLDER_PATH} / $ {DWARF_DSYM_FILE_NAME}"


Dobbiamo caricare altri file .dSYM che non sono $ {DWARF_DSYM_FILE_NAME}?
CyberMew,

@CyberMew, Non è necessario caricare tutto il file .dSYM. hai ragione. Quindi possiamo trovare solo il file che dobbiamo caricare. Ho modificato la mia risposta.
Ramesh RC

Credo che la tua risposta originale per caricare tutti i file .dSYM sia corretta. Ho verificato con il supporto e hanno affermato che "Crashlytics richiederà i file dei simboli dalla tua app principale insieme ai simboli di qualsiasi framework o libreria utilizzati.", Quindi praticamente sì, sono richiesti tutti i file dei simboli.
CyberMew,

È fantastico! Quando carico tutti i file .dSYM per testare il volo ricevo un avviso "ITMS-90381: Troppi file di simboli". Qualche idea?
Ramesh RC,

Carica su test flight? Intendi invece Firebase Crashlytics? Non sono sicuro perché non l'ho mai visto prima, forse puoi provare questa soluzione stackoverflow.com/questions/25755240/… , se non funziona contatta l'assistenza e facci sapere cosa dicono!
CyberMew,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.