SQLite pour Android a un support intégré pour cela.
À partir d'ici :
/**
* Controls the printing of wall-clock time taken to execute SQL statements
* as they are executed.
*
* Enable using "adb shell setprop log.tag.SQLiteTime VERBOSE".
*/
public static final boolean DEBUG_SQL_TIME =
Log.isLoggable("SQLiteTime", Log.VERBOSE);
Par conséquent, pour activer le suivi du temps d'exécution, exécutez :
adb shell setprop log.tag.SQLiteTime VERBOSE
Vous devrez redémarrer votre application pour recharger de nouveaux paramètres**. Juste après, vous commencerez à voir ces enregistrements de journal dans logcat :
02-14 12:27:00.457 11936-12137/osom.info.dbtest I/Database:elapsedTime4Sql|/data/data/osom.info.dbtest/databases/test.db|1.000ms|UPDATE TestTable SET key=? OÙ _id=1
** Parfois, cela ne suffira pas, alors exécutez adb shell stop
et adb shell start
.
Pour arrêter l'impression de ces journaux, redémarrez l'appareil (cette propriété n'est pas conservée entre les redémarrages) ou définissez la propriété sur un niveau de journal supérieur, c'est-à-dire :
adb shell setprop log.tag.SQLiteTime ERROR