Não foi possível concluir o envio da migração da malha dSYM When para firebase para crashlytics

12

Estou usando o xcode11 com o mac os 10.14.1. Implementei a malha na migração da base de firmas usando os seguintes documentos.

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

E eu gerei código para testar falhas, mas este relatório de falhas não pode aparecer no console do firebase crashlytics. Usei o seguinte documento para esta implementação

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

Também adicionei o seguinte script de execução nas fases de construção do Xcode

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

Mas isso retornará o seguinte erro quando eu executar o aplicativo.

31merror: Não foi possível concluir o envio do dSYM em /Users/macmini1/Library/Developer/Xcode/DerivedData/app_name-dnzsvdsxebmfqjbjecjlyhdzwags/Build/Products/Debug-iphonesimulator/app_name.app.dSYer: Error Domain = com.crítica -domain.process-dsym Código = 3 "O arquivo não existe mais em (nulo)" UserInfo = {NSLocalizedFailureReason = O arquivo não existe mais em (nulo)} [0m O comando PhaseScriptExecution falhou com um código de saída diferente de zero

Você poderia me ajudar a resolver este problema

IKKA
fonte
Você ainda está enfrentando o problema. Firebase ter um OMG que estava afetando os desenvolvedores a fazer o upload dos dSYMs
Zubair
oi, eu estou preso no mesmo problema, você teve alguma sorte com isso? A resposta de @ weet1988 não corrigir o meu problema (que já é o último script em execução no meu caso)
Mikey
11
@mikey eu deletei o script a partir do script run e novamente adicionado e também fechou a xcode.Then tentou correr again.It vai funcionar
IKKA
Na verdade, eu fiz o Crashlytics funcionar sem o upload-symbolsscript. Acabei de atualizar os pods para as versões mais recentes disponíveis e verifique se esse $ {PODS_ROOT}/Fabric/runfoi o último a ser executado. Obrigado pela sua resposta @IKKA
mikey
@mikey Você quis dizer que está usando apenas o comando $ {PODS_ROOT} / Fabric / run no runscript; direita?
IKKA 28/11/19

Respostas:

5

Eu tive o mesmo problema. O motivo foi que o script "$ {PODS_ROOT} / Fabric / run" não foi o último na lista de scripts em Fases de Construção. Fez o roteiro durar e tudo ficou bem.

weet1988
fonte
2
meu script é o mais recente, mas ainda recebo este erro ...
Danpe 22/01
5

Eu resolvi adicionando findcomando. Adicione o comando find acima dos símbolos de upload

Exemplo:

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

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

Ramesh RC
fonte
Precisamos fazer upload de outros arquivos .dSYM que não sejam $ {DWARF_DSYM_FILE_NAME}?
CyberMew 03/02
@ CyberMew, não é necessário fazer upload de todo o arquivo .dSYM. você está certo. Assim, podemos encontrar apenas o arquivo que precisamos enviar. Eu modifiquei minha resposta.
Ramesh RC
Acredito que sua resposta original para o upload de todos os arquivos .dSYM esteja correta. Verifiquei com suporte e mencionaram que "o Crashlytics exigirá os arquivos de símbolos do seu aplicativo principal e os símbolos de qualquer estrutura ou biblioteca usada". basicamente sim, todos os arquivos de símbolos são necessários.
CyberMew
Isso é super legal! Quando carrego todos os arquivos .dSYM para testar o vôo, recebo um aviso "ITMS-90381: Muitos arquivos de símbolos". Qualquer ideia?
Ramesh RC
Carregar para test flight? Você quer dizer Firebase Crashlytics? Não tenho certeza, pois não o encontrei antes, talvez você possa tentar esta solução stackoverflow.com/questions/25755240/… , se não funcionar, entre em contato com o suporte e deixe-nos saber o que eles dizem!
CyberMew