Android: Logcat

Hai appena premuto “Run”, l’app si avvia e… boom. “L’app si è interrotta”. Invece di fissare il codice sperando in un’illuminazione divina, è il momento di aprire il Logcat in Android Studio.

Il Logcat è la console dove il sistema Android e la tua app “parlano”. Imparare a filtrarlo ti farà risparmiare ore di lavoro.

I Livelli di Log

In Java, usiamo la classe android.util.Log. Non tutti i log sono uguali; ognuno ha un livello di priorità:

  • Log.v (Verbose): Il più basso. Usalo per dettagli banali (es. “Metodo X chiamato”).
  • Log.d (Debug): Per messaggi utili durante lo sviluppo.
  • Log.i (Info): Per eventi importanti (es. “Download completato”).
  • Log.w (Warn): Per avvertire di potenziali problemi che non bloccano l’app.
  • Log.e (Error): Il più importante. Indica che qualcosa è andato storto (es. un catch di un’eccezione).

Come scrivere un Log

Un errore comune è scrivere tag a caso. La best practice è definire una costante TAG all’inizio di ogni classe:

public class MainActivity extends AppCompatActivity {
    // Usare il nome della classe come TAG aiuta a filtrare i log
    private static final String TAG = "MainActivity";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Log.d(TAG, "L'Activity è stata creata correttamente!");
        
        try {
            int risultato = 10 / 0;
        } catch (ArithmeticException e) {
            // Loggare sempre l'eccezione 'e' per vedere lo StackTrace
            Log.e(TAG, "Errore nel calcolo matematico", e);
        }
    }
}

Filtrare

Il Logcat può mostrare migliaia di righe al secondo. Per non impazzire, usa questi trucchi in Android Studio:

  • package:mine: Mostra solo i log della tua app (fondamentale!).
  • level:error: Filtra solo i crash e gli errori gravi.
  • tag:MainActivity: Isola i messaggi di una specifica classe.
  • Search Bar: Puoi cercare parole chiave come “NullPointerException” per trovare subito il punto del crash.

Anatomia di un Crash (StackTrace)

Quando l’app crasha, il Logcat diventa rosso. Quello che vedi è lo StackTrace. Ecco come leggerlo:

  • Cerca la riga che inizia con Caused by:.
  • Trova il nome del tuo pacchetto (es. com.samuele.miapp).
  • Clicca sul link blu: Android Studio ti porterà esattamente alla riga di codice Java che ha causato l’errore.

Conclusione

Il Logcat non è solo una lista di scritte noiose; è il diario segreto della tua app. Usare Log.d e Log.e strategicamente ti permetterà di risolvere i bug in pochi minuti anziché ore.

Lascia una risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Share via
Copy link