Ricevi report leggibili sugli arresti anomali nella dashboard di Crashlytics


iOS e versioni successive (piattaforme Apple)

Per le app per la piattaforma Apple che utilizzano l'CrashlyticsSDK Unity 8.2.0 o versioni successive, il plug-in Firebase Unity Editor configura automaticamente il progetto Xcode per il caricamento dei simboli. Scarica la versione più recente.

Android

Per le app 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 tracce dello stack simboliche per gli arresti anomali delle librerie native nella dashboard di Crashlytics, devi caricare le informazioni sui simboli al momento della compilazione utilizzando l'interfaccia a riga di comando Crashlytics.Firebase

  1. Assicurati di utilizzare l'CrashlyticsSDK Unity 8.6.1 o versioni successive. Scarica la versione più recente.

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

    1. Segui le istruzioni per installare Firebase CLI.

      Se hai già installato l'interfaccia a riga di comando, assicurati di aggiornarla alla versione più recente.

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

      1. Seleziona la casella Impostazioni del player Android > Impostazioni di pubblicazione > compilation > Manifest principale personalizzato.

      2. Apri il modello manifest in Assets/Plugins/Android/AndroidManifest.xml.

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

  3. Compila il progetto e carica i simboli.

    Completa questi passaggi ogni volta che crei una release build o qualsiasi build per la quale vuoi visualizzare le tracce dello stack simboliche nella console Firebase.

    1. Nella finestra di dialogo Impostazioni di compilazione, esegui una delle seguenti operazioni:

      • Esportare in un progetto Android Studio per compilare il progetto; oppure

      • Compila l'APK direttamente da Unity Editor.
        Prima di eseguire il build, assicurati che la casella di controllo Crea symbols.zip sia selezionata nella finestra di dialogo Impostazioni di compilazione.

    2. Al termine della compilazione, genera un file di simboli compatibile con Crashlytics e caricalo sui server Firebase eseguendo il seguente comando Firebase CLI:

      firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/SYMBOLS
      • FIREBASE_APP_ID: il tuo 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 di 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 principale del progetto esportato dopo la compilazione dell'app tramite Gradle o Android Studio.

        • L'APK è stato creato direttamente da Unity: PATH/TO/SYMBOLS è il percorso del file di simboli zipped generato nella directory principale del progetto al termine della compilazione (ad esempio: myproject/myapp-1.0-v100.symbols.zip).

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

      Bandiera Descrizione
      --generator=csym

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

      Non consigliato per l'uso. 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 il valore predefinito per la generazione del file di simboli è Breakpad. Utilizza questo flag solo se hai aggiunto symbolGenerator { csym() } nella configurazione di compilazione e vuoi sostituirlo 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