Skip to content
Aiuto! Come debuggo un’app?

Aiuto! Come debuggo un’app?

By Pier Luigi Papeschi

Nella vita di uno sviluppatore il debug è un processo continuo e fondamentale perché non esiste programmatore al mondo che sia esente da errare (la scelta del verbo è voluta ;). In base a cosa sviluppiamo il metodo di debug può cambiare, ma la sostanza resta: dobbiamo capire cosa accade nel codice che abbiamo scritto.

Debug in un app Flutter

Parto da un ambiente a me familiare dove uso moltissimo il debug, anche quello “professionale” cioè con gli step, le varie variabili valorizzate, uso della memoria ecc.

Il modo più semplice per fare un debug è usare lo statement print

Certo, si stampa qualcosa nel terminale, valori di variabili, punti dell’app in cui si vuole passare o altro. Usare questo metodo rende obbligatorio racchiudere lo statement dentro una condizione che verifica se siamo in ambiente debug o release, così:

if (kDebugMode) {
  print('Auth check completed, navigating to Home $authStatus');
}

La variabile globale kDebugMode è definita nella libreria foundation quindi dobbiamo importarla import 'package:flutter/foundation.dart';

Un metodo più prolisso e che ci consente di indagare anche dove non abbiamo accesso (p.e. processi interni i Flutter, aspetti grafici legati al widget tree, ecc) in Android è lanciare in un terminale questo comando:

adb logcat -c && adb logcat | grep -E "AndroidRuntime|FATAL EXCEPTION|E/flutter"

e poi in altro terminale o da VS Code lanciare l’app. Se ci saranno dei crash il comando lanciato prima mostrerà i problemi che lo causano.