87 votes

Comment utiliser ADB dans Android Studio pour visualiser une base de données SQLite ?

J'ai besoin de visualiser ma base de données SQLite mais je ne sais pas comment faire. Je suis allé sur http://www.sqlite.org/download.html et téléchargé le shell de ligne de commande pour mon système d'exploitation, mais lorsque je lance le programme et que je tape adb ... Je reçois des erreurs.

Remarque : j'utilise Android Studio, donc je suppose que je n'ai pas besoin d'installer quoi que ce soit d'autre, car je me souviens qu'Android Studio disait avoir tous les outils SDK nécessaires.

5voto

yshahak Points 3689

Vous pouvez utiliser un très bon outil appelé Stetho en ajoutant ceci à build.gradle fichier :

compile 'com.facebook.stetho:stetho:1.4.1'

et l'a initialisé dans votre Application o Activity onCreate() méthode :

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

Vous pouvez ensuite visualiser les enregistrements de la base de données dans chrome dans l'adresse :

chrome://inspect/#devices

Pour plus de détails, vous pouvez lire mon billet : Comment visualiser facilement vos enregistrements db

4voto

Nitesh Verma Points 1137

Selon les appareils, il se peut que vous ne trouviez pas la commande sqlite3 dans le shell adb. Dans ce cas, vous pouvez suivre cette procédure :

shell adb

$ run-as package.name
$ cd ./databases/
$ permissions actuelles - r=4, w=2, x=1
$ chmod 666 ./nomdb.db
$ quitter
$ exit
adb pull /data/data/package.name/databases/dbname.db ~/Desktop/
a ~/Desktop/dbname.db /data/data/package.name/databases/dbname.db
shell adb
$ run-as package.name
$ chmod 660 ./databases/dbname.db #Restaurer les permissions originales
$ exit
$ quitter

pour référence, allez sur https://stackoverflow.com/a/17177091/3758972 .

Il peut arriver que vous obteniez le message "remote object not found" après avoir suivi la procédure ci-dessus. Dans ce cas, changez la permission de votre dossier de base de données à 755 dans le shell adb.

$ chmod 755 databases/

Mais attention, cela ne fonctionne que sur les versions Android < 21.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X