从安卓设备中读取数据库文件

3

我一直在尝试从我的Android应用程序中提取sqlite数据库的副本以供开发使用。我的第一次尝试是调用:

./adb shell
cd data/data
cd com.example.app
cd databases

但是,我在这里遇到了困难,因为我没有权限执行pull命令或者查看该目录中的文件!
所以我想尝试使用DDMS文件浏览器,它给了我这个: File explorer 但是当我尝试从这里拉取文件时(我希望它们在数据文件夹中),它只拉取了目录,没有其他内容。我该如何拉取我的应用程序正在创建/使用的数据库副本?
我已经尝试过将手机存储和SD卡上的文件进行操作。我猜我可以将其复制到SD卡上,然后将SD卡插入电脑中而不是手机,并以这种方式进行操作?不确定是否能行,而且这样做会非常麻烦!
谢谢

我相信你需要Root访问权限。 - Blundell
你尝试过在模拟器中运行应用程序,然后使用DDMS从模拟器文件系统复制它吗? - pandre
1
真遗憾,那么文件资源管理器还有什么用处呢? - ingh.am
2个回答

2
如果您的设备无法访问此目录(并且您的设备没有 root 权限 - 如果您获取了 root 权限,您将拥有访问权限),则需要从应用程序中获取帮助。
例如,该应用程序可以将 databases/your_database_name.db 复制到可读位置,可能在 SD 卡上。然后您可以从那里拉取。

1

如果你只需要数据库进行一般的检查/查看,你可以在模拟器上运行你的应用程序并从那里获取数据库。如果你需要在你的设备上获取特定实例,你需要像其他人建议的那样对你的设备进行root。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接