web-dev-qa-db-fra.com

Pourquoi Crashlytics demande à chaque fois un fichier DSYM manquant?

J'utilise Crashlytics dans mon application, tout fonctionne bien. même Crashlytics fonctionne également bien.

Mais le problème est que chaque fois que je crée une nouvelle construction pour notre application, c'est à nouveau montrant le fichier DSYM manquant .

Existe-t-il une solution à ça?

Dans le document en tissu, je l'ai trouvé. mais je n'ai pas compris cela.

quelqu'un peut-il m'expliquer comment résoudre ce problème?

https://docs.fabric.io/Apple/crashlytics/advanced-setup.html

enter image description here

8
Anup Gupta

TL; DR

Chaque fois que vous recompilez votre projet après avoir ajouté une ligne de code, le dSYM change car l'adresse de vos lignes de code dans le binaire résultant n'est pas la même.

Vous pouvez consulter Fabric docs sur le téléchargement de dsym pour télécharger automatiquement votre dSYM en ajoutant une phase de construction ou utiliser le module Fabric au lieu de simplement Crashlytics qui ajoute apparemment une phase de construction automatiquement comme l'a dit @ekscrypto.

Si vous voulez toujours le faire manuellement, ouvrez votre xcarchive où vous pouvez trouver vos dSYM et les télécharger sur crashlytics

Plus de détails

dSYM est l'abréviation de debug SYMbols. Cela aide crashlytics à résoudre les journaux de plantage qu'il reçoit et permet d'afficher des informations détaillées sur les plantages/bogues qui peuvent se produire.

Lorsque vous archivez votre application, vous vous retrouvez avec le "fichier" * .xcarchive qui est vraiment un dossier que vous pouvez parcourir. À l'intérieur de cette xcarchive, vous devriez avoir un dossier dSYM où se trouvent vos dSYM.

Pour le visualiser, ouvrez d'abord la fenêtre de l'organiseur dans XCode (Fenêtre> Organiseur ou cmd + shift + 6), faites un clic droit sur la dernière archive et cliquez sur "Afficher dans le Finder". Dans la fenêtre du Finder qui s'ouvre, cliquez avec le bouton droit sur le dernier xcarchive de votre application et cliquez sur afficher le contenu (désolé, l'image est en français) browse xcarchive contents

Cela vous emmène à l'intérieur de votre xcarchive où vous pouvez voir les dSYM de votre application

dSYM for the app

Le téléchargement de cela sur crashlytics devrait résoudre votre problème

6
user3476114

Suivez les étapes simples 1 Allez dans l'archive et cliquez avec le bouton droit sur la dernière version dans laquelle vous souhaitez obtenir un rapport d'erreur sur Firebase 2 voir le dossier dsymes 3 créer le fichier Zip du dossier dsymes 4 enfin télécharger ce fichier Zip dans la console Firebase

2
Lucky Mehndiratta

dans votre projet Xcode, sous Build Phases, ajoutez le script d'exécution ci-dessus:

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

enter image description here

1
Mahgol Fa

Assurez-vous d'intégrer le nouveau framework 'Fabric' et pas seulement le framework Crashlytics. Lorsque vous le faites, vous vous retrouverez avec un nouveau script dans la phase de construction de votre projet.

Xcode project Build Phase script for Fabric.io

Ce script localisera automatiquement votre dSYM et le téléchargera avec votre build sur le système Fabric.io/Crashlytics.

1
ekscrypto

Cette erreur signifie que certains fichiers dSYM sont manquants. L'approche recommandée consiste à télécharger constamment des fichiers dSYM vers Crashlytics.

Maintenant que Crashlytics est intégré dans Firebase , la documentation a légèrement changé: https://firebase.google.com/docs/crashlytics/get-deobfuscated-reports-new-sdk

  1. Intégrer Crashlytics: pod 'Firebase/Crashlytics'
  2. Ajouter une phase d'exécution de script: find "${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}" -name "*.dSYM" | xargs -I \{\} $PODS_ROOT/FirebaseCrashlytics/upload-symbols -gsp ${SRCROOT}/GoogleService-Info.plist -p ios \{\}

Dans le cas où vous ne souhaitez pas télécharger des fichiers dSYM à chaque fois que vous déboguez, créez votre application: https://support.crashlytics.com/knowledgebase/articles/118559-can-i-make-the-dsym-uploading -on-on-release-buil

0
CoderPug