Ottenere report leggibili sugli arresti anomali nella dashboard di Crashlytics (Unity)

Seleziona la piattaforma: iOS+ Android Flutter Unity


iOS+ (piattaforme Apple)

Per le app per piattaforme Apple che utilizzano l'SDK Unity Crashlytics 8.2.0 o versioni successive, il plug-in Firebase Unity Editor configura automaticamente il progetto Xcode per caricare i simboli. Scarica l'ultima versione.

Android

Per le app per Android, l'SDK Unity Crashlytics 8.6.1 e versioni successive include automaticamente i report sugli arresti anomali NDK, che consentono a Crashlytics di segnalare automaticamente gli arresti anomali di Unity IL2CPP su Android. Tuttavia, per visualizzare le analisi dello stack con simboli per gli arresti anomali della libreria nativa nella dashboard di Crashlytics, devi caricare le informazioni sui simboli al momento della build utilizzando l'interfaccia a riga di comando Firebase.

  1. Assicurati di utilizzare l'SDK Unity Crashlytics v8.6.1 o versioni successive. Scarica l'ultima versione.

  2. Configura l'ambiente e il progetto per il caricamento dei simboli:

    1. Segui le istruzioni per installare l'interfaccia a riga di comando Firebase.

      Se hai già installato l'interfaccia a riga di comando, assicurati di eseguire l'aggiornamento all'ultima versione.

    2. (Solo per le app che utilizzano il livello API Android 30 o versioni successive) Aggiorna il modello AndroidManifest.xml della tua app per disattivare il tagging dei puntatori:

      1. Seleziona la casella Android Player Settings > Publishing Settings > Build > Custom Main Manifest (Impostazioni del player Android > Impostazioni di pubblicazione > Build > Manifest principale personalizzato).

      2. Apri il modello di manifest disponibile all'indirizzo Assets/Plugins/Android/AndroidManifest.xml.

      3. (Solo per le app che utilizzano una versione dell'SDK precedente alla 8.8.0) Aggiungi il seguente attributo al tag dell'applicazione: <application android:allowNativeHeapPointerTagging="false" ... />

  3. Crea il progetto e carica i simboli.

    Completa questi passaggi ogni volta che crei una build di release o qualsiasi build per cui vuoi visualizzare analisi dello stack con simboli nella dashboard Crashlytics.

    1. Nella finestra di dialogo Build Settings (Impostazioni build), esegui una delle seguenti operazioni:

      • Esportare in un progetto Android Studio per creare il progetto.

      • Crea l'APK direttamente dall'editor di Unity.
        Prima di creare la build, assicurati che la casella di controllo Crea symbols.zip sia selezionata nella finestra di dialogo Impostazioni build.

    2. Al termine della build, genera un file dei simboli compatibile con Crashlytics e caricalo sui server Firebase eseguendo il seguente comando dell'interfaccia a riga di comando Firebase:

      firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/SYMBOLS
      • FIREBASE_APP_ID: l'ID app Firebase per Android (non il nome del pacchetto)
        Esempio di ID app Firebase per Android: 1:567383003300:android:17104a2ced0c9b9b

      • PATH/TO/SYMBOLS: il percorso del file dei simboli generato dall'interfaccia a riga di comando

        • Esportato in un progetto Android Studio: PATH/TO/SYMBOLS è la directory unityLibrary/symbols, che viene creata nella directory root del progetto esportato dopo aver creato l'app tramite Gradle o Android Studio.

        • Hai creato l'APK direttamente da Unity: PATH/TO/SYMBOLS è il percorso del file dei simboli compresso generato nella directory root del progetto al termine della build (ad esempio: myproject/myapp-1.0-v100.symbols.zip).

      Visualizza le opzioni avanzate per l'utilizzo del comando dell'interfaccia a riga di comando Firebase per la generazione e il caricamento dei file dei simboli

      Flag Descrizione
      --generator=csym

      Utilizza il generatore di file dei simboli cSYM precedente anziché il generatore Breakpad predefinito

      Opzione sconsigliata per l'utilizzo. Ti consigliamo di utilizzare il generatore di file di simboli Breakpad predefinito.

      --generator=breakpad

      Utilizza il generatore di file di simboli Breakpad

      Tieni presente che l'impostazione predefinita per la generazione dei file dei simboli è Breakpad. Utilizza questo flag solo se hai aggiunto symbolGenerator { csym() } nella configurazione di compilazione e vuoi eseguire l'override per utilizzare Breakpad.

      --dry-run

      Genera i file dei simboli, ma non li carica

      Questo flag è utile se vuoi ispezionare i contenuti dei file inviati.

      --debug Fornisce informazioni di debug aggiuntive