如何在Android上读写其他应用程序的数据库

时间:2015-10-29 13:56:28

标签: android database sqlite ormlite

我想阅读和编写其他应用程序的数据库

我尝试了两种方法。两者都需要root但仍无效。

1, 将其他应用程序的数据库文件复制到我的应用程序的目录中,如下所示:

su
cat xxx.xxx.xxx/databases/data.db > my.package/databases/data.db
chmod 660 data.db chmod 771 databases/
chown appUSR:appUSR data.db

但我使用ormlite来操作它,SQLExpetion抛出“从DBHelper获取可写数据库失败”。我尝试将data.db的权限更改为777,并且在ormlite执行和excption throw之后,权限已经更改为660.理论上我可以访问此.db文件whit 660.I不知道为什么我不能。

2
我直接将xxx.xxx.xxx/databases/data.db权限更改为666,将数据库更改为777。仍然无法访问,我想在SQLite api执行时要更改.db文件的权限。

我删除data.db并执行SQLite api,它可以自己创建一个空的data.db,我可以处理它。但我无法从具有相同字段的其他应用程序访问data.db副本。我更改了权限,所有者,群组,仍然无法正常工作。 这两个文件,有什么不同?

现在我将此文件复制到SD卡,我可以读写它,但我不想那样使用。

0 个答案:

没有答案