Ricevi report leggibili sugli arresti anomali nella dashboard di Crashlytics


iOS+ (piattaforme Apple)

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

Android

Per le app per Android, l'SDK Unity 8.6.1+ include automaticamente i report sugli arresti anomali dell'NDK, che consentono a Crashlytics di segnalare automaticamente gli arresti anomali di Unity IL2CPP su Android.Crashlytics Tuttavia, per visualizzare le tracce dello stack con simboli per gli arresti anomali della libreria nativa nella dashboard Crashlytics, devi caricare le informazioni sui simboli in fase di compilazione utilizzando la CLI Firebase.

  1. Assicurati di utilizzare l'Crashlytics SDK Unity 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 la CLI Firebase.

      Se hai già installato la CLI, 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 del puntatore:

      1. Seleziona la casella Android Player Settings > Publishing Settings > Build > Custom Main Manifest.

      2. Apri il modello di manifest che si trova 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 rilascio o qualsiasi build per cui vuoi visualizzare stack trace con simboli nella console Firebase.

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

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

      • Crea il tuo APK direttamente da Unity Editor.
        Prima di creare la build, assicurati che la casella di controllo Crea symbols.zip sia selezionata nella finestra di dialogo Impostazioni build.

    2. Una volta completata la build, genera un file di simboli compatibile con Crashlytics e caricalo sui server Firebase eseguendo il seguente comando dell'interfaccia a riga di comando di 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 dalla CLI

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

        • Hai creato l'APK direttamente da Unity. PATH/TO/SYMBOLS è il percorso del file di 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 di simboli

      Bandiera Descrizione
      --generator=csym

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

      Non è consigliato 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 di file di simboli è Breakpad. Utilizza questo flag solo se hai aggiunto symbolGenerator { csym() } nella configurazione della build e vuoi eseguirne l'override per utilizzare Breakpad.

      --dry-run

      Genera i file di simboli, ma non li carica

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

      --debug Fornisce informazioni di debug aggiuntive