Ao desenvolver um aplicativo Android que usa SQLite como banco de dados, às vezes você precisa ver os dados armazenados para depurar algo.
Uma maneira fácil de ver o banco de dados, é recuperar o arquivo e abri-lo com o SQLite CLI para consulta.
Para fazer isso, você precisa saber o pacote do aplicativo, o nome do banco de dados e digitar o seguinte comando:
Para dispositivos com acesso root:
PACKAGE=[package name] DB=[database name] && eval adb shell 'su -c cp /data/data/$PACKAGE/databases/$DB /sdcard' && adb pull /sdcard/$DB /tmp && sqlite3 /tmp/$DB
Para dispositivo emulador:
PACKAGE=[package name] DB=[database name] && eval adb shell 'cp /data/data/$PACKAGE/databases/$DB /sdcard' && adb pull /sdcard/$DB /tmp && sqlite3 /tmp/$DB
Exemplo
Se o pacote do seu aplicativo for cl.rodrigoayala.myapp e o nome do banco de dados for myapp.db , vá para o seu terminal e digite;
Em um dispositivo com acesso root:
PACKAGE=cl.rodrigoayala.myapp DB=myapp.db && eval adb shell 'su -c cp /data/data/$PACKAGE/databases/$DB /sdcard' && adb pull /sdcard/$DB /tmp && sqlite3 /tmp/$DB
Em um emulador:
PACKAGE=cl.rodrigoayala.myapp DB=myapp.db && eval adb shell 'cp /data/data/$PACKAGE/databases/$DB /sdcard' && adb pull /sdcard/$DB /tmp && sqlite3 /tmp/$DB
Muito fácil, não é? 🙂