Obtenez des rapports d'erreur lisibles dans le tableau de bord Crashlytics

iOS+ (plateformes Apple)

Pour les applications de la plate-forme Apple utilisant le SDK Crashlytics Unity 8.2.0+, le plugin Firebase Unity Editor configure automatiquement votre projet Xcode pour télécharger des symboles. Téléchargez la dernière version.

Android

Pour les applications Android, le SDK Crashlytics Unity 8.6.1+ inclut automatiquement le rapport de crash NDK, ce qui permet à Crashlytics de signaler automatiquement les crashs de Unity IL2CPP sur Android. Cependant, pour afficher les traces de pile symbolisées pour les pannes de bibliothèque native dans le tableau de bord Crashlytics, vous devez télécharger les informations sur les symboles au moment de la construction à l'aide de la CLI Firebase.

  1. Assurez-vous que vous utilisez le SDK Crashlytics Unity v8.6.1 ou version ultérieure. Téléchargez la dernière version.

  2. Configurez votre environnement et votre projet pour le téléchargement de symboles :

    1. Suivez les instructions pour installer la CLI Firebase .

      Si vous avez déjà installé la CLI, assurez-vous de mettre à jour vers sa dernière version .

    2. (uniquement pour les applications utilisant le niveau d'API Android 30+) Mettez à jour le modèle AndroidManifest.xml de votre application pour désactiver le balisage du pointeur :

      1. Cochez la case Paramètres du lecteur Android > Paramètres de publication > Construire > Manifeste principal personnalisé .

      2. Ouvrez le modèle de manifeste situé dans Assets/Plugins/Android/AndroidManifest.xml .

      3. (uniquement pour les applications utilisant une version du SDK antérieure à 8.8.0 ) Ajoutez l'attribut suivant à la balise d'application : <application android:allowNativeHeapPointerTagging="false" ... />

  3. Construisez votre projet et téléchargez des symboles.

    Effectuez ces étapes chaque fois que vous créez une version de version ou toute version pour laquelle vous souhaitez voir les traces de pile symbolisées dans la console Firebase.

    1. Dans la boîte de dialogue Paramètres de construction , effectuez l'une des opérations suivantes :

      • Exportez vers un projet Android Studio pour créer votre projet ; ou

      • Créez votre APK directement à partir de l'éditeur Unity.
        Avant de construire, assurez-vous que la case Créer des symboles.zip est cochée dans la boîte de dialogue Paramètres de construction .

    2. Une fois votre build terminée, générez un fichier de symboles compatible Crashlytics et téléchargez-le sur les serveurs Firebase en exécutant la commande Firebase CLI suivante :

      firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/SYMBOLS
      • FIREBASE_APP_ID : ID de votre application Firebase Android (pas le nom de votre package)
        Exemple d'ID d'application Android Firebase : 1:567383003300:android:17104a2ced0c9b9b

      • PATH/TO/SYMBOLS : Le chemin d'accès au fichier de symboles généré par la CLI

        • Exporté vers un projet Android Studio — PATH/TO/SYMBOLS est le répertoire unityLibrary/symbols , qui est créé à la racine du projet exporté après avoir créé l'application via Gradle ou Android Studio.

        • Créez l'APK directement depuis Unity — PATH/TO/SYMBOLS est le chemin du fichier de symboles compressé généré dans le répertoire racine du projet lorsque votre build est terminé (par exemple : myproject/myapp-1.0-v100.symbols.zip ).

      Afficher les options avancées d'utilisation de la commande Firebase CLI pour la génération et le téléchargement de fichiers de symboles

      Drapeau Description
      --generator=csym

      Utilise l'ancien générateur de fichiers de symboles cSYM au lieu du générateur Breakpad par défaut

      Utilisation non recommandée. Nous vous recommandons d'utiliser le générateur de fichiers de symboles Breakpad par défaut.

      --generator=breakpad

      Utilise le générateur de fichiers de symboles Breakpad

      Notez que la valeur par défaut pour la génération du fichier de symboles est Breakpad. N'utilisez ce drapeau que si vous avez ajouté symbolGenerator { csym() } dans votre configuration de build et vous souhaitez le remplacer pour utiliser Breakpad à la place.

      --dry-run

      Génère les fichiers de symboles mais ne les télécharge pas

      Cet indicateur est utile si vous souhaitez inspecter le contenu des fichiers envoyés.

      --debug Fournit des informations de débogage supplémentaires