有没有办法让Android用户在他/她的手机上浏览SQLite数据库并查看数据库中的数据?
我经常使用SoftTrace beta程序.它很棒,但我无法找到将其跟踪的数据下载到PC.
特定应用程序的数据库存在于 /data/data/[packagename]/databases
例如,packagename是您在清单中定义的包/data/data/org.vimtips.supacount/databases/counts.db
.
您可以使用adb shell
和键入来查看它sqlite3 /data/data/org.vimtips.supacount/databases/counts.db
或者您可以从设备中将其从第三方实用程序中查看,并使用类似命令adb pull /data/data/org.vimtips.supacount/databases/counts.db .
.
这假设您有权查看数据库,如果您没有自己编写应用程序,则可能没有...但在这种情况下,它实际上是编程问题吗?
如果您使用的是Eclipse,则可以使用名为"Questoid SQLite Browser"的插件来浏览Android模拟器上的SQL Lite数据库:
安装插件
重启eclipse
启动你的模拟器
切换到DDMS
使用插件打开数据库(如前面提到的@synic,数据库位于此处,例如/ data/data/my_project/databases)
这是一个更详细的教程:http: //www.tylerfrankenstein.com/browse-android-emulator-sqlite-database-eclipse
这是在free
手机上为我工作的方法is not rooted
.归功于这个SO答案.
使用 adb backup -f backup.ab -noapk app.package.name
在Windows Android Backup Extractor
上,在这里下载SourceForge上找到的jar ,然后运行java -jar abe.jar unpack backup.ab extractedbackup.tar
.在Linux上,您可以按照dd
我在开头给出的答案中的说明进行操作.
下载SQLite Database Browser
从SourceForge 这里,然后打开db
包含在文件extractedbackup.tar
.
就个人而言,为了简化这个过程,我首先将adb添加到我的环境PATH中.然后我创建了一个备份文件夹,我存储了上面提到的所有文件.这使我不得不在整个地方cd(更改目录).
Questoid插件似乎花费9美元并需要注册.Windows上的另一种替代方法是下载开源公共域SQLLite浏览器(下面的链接),然后从手机中提取数据库.在Eclipse中,您可以从文件浏览器执行此操作,转到手机或模拟器上的/ data/data/[packagename]/databases目录,然后单击右上角的"从设备中提取文件".在本地保存数据库,然后使用SQLite浏览器打开.
http://sourceforge.net/projects/sqlitedbrowser/