39 votes

parcourir les données dans la base de données SQLite d'Android

Existe-t-il un moyen pour un utilisateur Android de parcourir les bases de données SQLite sur son téléphone et de visualiser les données dans les bases de données ?

J'utilise beaucoup le programme bêta de SoftTrace. Il est génial, mais je n'ai trouvé aucun moyen de télécharger les données qu'il suit sur un PC.

26voto

synic Points 12644

La base de données d'une application spécifique se trouve dans /data/data/[packagename]/databases

Le nom du paquet est le paquet que vous définissez dans votre manifeste, par exemple /data/data/org.vimtips.supacount/databases/counts.db .

Vous pouvez le visualiser avec adb shell et le type sqlite3 /data/data/org.vimtips.supacount/databases/counts.db

Ou vous pouvez le retirer du dispositif pour l'examiner avec un utilitaire tiers, avec une commande telle que adb pull /data/data/org.vimtips.supacount/databases/counts.db . .

Cela suppose que vous ayez la permission d'afficher la base de données, ce que vous n'avez peut-être pas si vous n'avez pas écrit l'application vous-même... mais dans ce cas, est-ce vraiment une question de programmation ?

18voto

Si vous utilisez Eclipse, vous pouvez utiliser un plugin appelé "Questoid SQLite Browser" pour parcourir la base de données SQL Lite sur votre émulateur Android :

  1. Installer le plugin
  2. Redémarrer l'éclipse
  3. Démarrez votre émulateur
  4. Passage au DDMS
  5. Ouvrez la base de données avec le plugin (comme @synic l'a mentionné précédemment, la BD est située ici, par exemple /data/data/mon_projet/databases)

Voici un tutoriel plus détaillé : http://www.tylerfrankenstein.com/browse-Android-emulator-sqlite-database-eclipse

7voto

mattblang Points 1229

Voici le free méthode qui a fonctionné pour moi sur un téléphone qui is not rooted . Le mérite revient à cette réponse SO .

  1. Utilisez adb backup -f backup.ab -noapk app.package.name
  2. Sous Windows, téléchargez le Android Backup Extractor jar trouvé sur SourceForge aquí puis exécutez java -jar abe.jar unpack backup.ab extractedbackup.tar . Sous Linux, vous pouvez suivre le dd des instructions de la réponse à laquelle j'ai donné crédit au début.
  3. Télécharger SQLite Database Browser de SourceForge aquí puis ouvrez le db contenu dans le fichier extractedbackup.tar .

Personnellement, pour faciliter ce processus, j'ai d'abord ajouté adb à mon PATH d'environnement. Puis j'ai créé un dossier de sauvegarde où je stocke tous les fichiers mentionnés ci-dessus. Cela m'évite d'avoir à cd (changer de répertoire) partout.

5voto

joseph_morris Points 467

Le plugin Questoid semble coûter 9 dollars et nécessite un enregistrement. Une autre alternative sous Windows consiste à télécharger le navigateur SQLLite (lien ci-dessous) et à extraire la base de données du téléphone. Dans Eclipse, vous pouvez le faire à partir du navigateur de fichiers, en allant dans le répertoire /data/data/[nom du pack]/databases du téléphone ou de l'émulateur, et en cliquant sur "Pull a File From The Device" en haut à droite. Enregistrez la base de données localement, puis ouvrez-la avec le navigateur SQLite.

http://sourceforge.net/projects/sqlitedbrowser/

3voto

Denis Kniazhev Points 1998

Si vous avez eu la chance d'obtenir IntelliJ Ultimate, vous pouvez brancher le périphérique, ouvrir l'onglet "Base de données" sur la droite, cliquer sur +, sélectionner SQLite. Le reste est trivial.

Une chose à garder à l'esprit avec ce système est que vous devez continuer à cliquer sur le bouton "Synchroniser" sur la base de données (ou sur la table sélectionnée) pour voir les changements effectués en externe, ce qui est très ennuyeux.

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