Analizzare un'analisi dello stack

Il debug di un'app spesso richiede l'uso di analisi dello stack. Un'analisi dello stack viene generata quando l'app si arresta in modo anomalo a causa di un errore o di un'eccezione. Puoi anche stampare un'analisi dello stack in qualsiasi momento del codice dell'app utilizzando metodi come Thread.dumpStack().

Mentre l'app è in esecuzione in modalità di debug su un dispositivo connesso, Android Studio stampa ed evidenzia le analisi dello stack nella visualizzazione Logcat, come mostrato nella Figura 1. Un'analisi dello stack mostra un elenco di chiamate al metodo che portano alla generazione dell'eccezione, insieme ai nomi file e ai numeri di riga in cui si sono verificate le chiamate.

Figura 1. Un'analisi dello stack in Logcat.

Fai clic sui nomi file evidenziati per aprire i file ed esaminare l'origine della chiamata al metodo. Fai clic sui pulsanti Giù dell'analisi dello stack e Giù dell'analisi dello stack per spostarti rapidamente tra le righe dell'analisi dello stack visualizzate nella finestra Logcat.

Apri analisi dello stack da origini esterne

A volte potresti voler analizzare le analisi dello stack condivise in una segnalazione di bug anziché quelle trovate durante il debug. Per analizzare i dati di Firebase Crashlytics, utilizza la finestra dello strumento App Quality Insights. Per analizzare i dati da altre origini, ad esempio le analisi dello stack generate sui dispositivi degli utenti da Google Play Console, segui questi passaggi:

  1. Apri il progetto in Android Studio.

    Nota: assicurati che il codice sorgente che stai visualizzando provenga dalla stessa versione dell'app che ha generato l'analisi dello stack. Se il codice è diverso, si verificheranno delle mancate corrispondenze tra i nomi dei file e i numeri di riga o l'ordine delle chiamate nell'analisi dello stack e nel progetto.

  2. Nel menu Analizza, fai clic su Analizza Stacktrace.

    Finestra di analisi dell'analisi dello stack

    Figura 2. Analizza la finestra di analisi dello stack.

  3. Incolla il testo dell'analisi dello stack nella finestra Analizza Stacktrace e fai clic su OK.

Android Studio apre una nuova scheda <Stacktrace>, mostrata nella figura 3, con l'analisi dello stack che hai incollato nella finestra Esegui.

Finestra di analisi dello stack

Figura 3. <Stacktrace> in Android Studio.

Monitora gli appunti per rilevare nuove analisi dello stack

Per migliorare la produttività se utilizzi spesso analisi dello stack esterne, puoi consentire ad Android Studio di monitorare continuamente gli appunti di sistema alla ricerca di nuove analisi dello stack. Per farlo:

  1. Apri lo strumento Analizza Stacktrace.
  2. Seleziona la casella di controllo Rileva e analizza automaticamente i dump dei thread copiati negli appunti al di fuori di IntelliJ IDEA.
  3. Copia un'analisi dello stack in un'altra applicazione, ad esempio un browser web, negli appunti di sistema.

Quando torni alla finestra di Android Studio, l'analisi dello stack si apre automaticamente nella finestra Esegui, quindi non è necessario incollarla nella finestra Analizza Stacktrace.