在developer docs中,提到了sqlite3
可通过adb shell获得。但是,当我这样做时,我看到的数据库看起来完全是空的,而当我adb pull
.sqlite
文件并在本地检查它时,它包含它应该包含的内容。例如,在后一种情况下.tables
列出了表,在前一种情况下它没有列出任何内容,并且从应该存在的表中尝试select
返回“错误:没有这样的表”。等
没有权限问题 - sqlite3
没有投诉就开始了,我显然是root用户,权限是660.
答案 0 :(得分:1)
担心有人可能有一天会犯同样的愚蠢错误:请注意,如果您使用sqlite3
的文件路径不存在,则会假定您正在创建新数据库。
显然我已登录cd
'到/data/data/[app]
- 我可以在Android设备监视器的“文件资源管理器”中看到database/[app].sqlite
- 忘了{{1}并且没有费心去cd database
,因为我(有点潜意识)假设ls
会给出“找不到文件”错误,如果不存在的话。这会创建一个空的sqlite3
文件,这是我随后一无所获的内容。