无法在adb shell上列出文件

时间:2015-09-11 16:41:28

标签: android sqlite adb

我试图从adb shell访问我的数据库文件,但是sqlite3无法打开它,我想这是因为我没有root,在网上搜索我发现要获得root权限你需要:< / p>

adb root ->adbd is restarted as root(dont really know what is this)
adb connect <device>
adb -s <device> shell

此命令在这里工作正常,但我仍然无法获得root访问权限,仍然无法访问我的数据库文件

我得到的错误是:

Error: unable to open database "ClientsInfoDB.db": unable to open database      file 1

在我的应用程序代码上创建我使用的数据库:

    public DatabaseHelper(Context context){
    super(context, "ClientsInfoDB", null, 2);

有人可以帮我吗? 感谢关注

编辑--- 缺少的重要信息(抱歉:s):我使用Blluestacks来运行我的应用程序

要访问我所做的app目录(在shell上):

cd data/data/<my_package_name>/databases
ls --> wont work
sqlite3 ClientsInfoDB
.databases --> message error that i posted above

1 个答案:

答案 0 :(得分:0)

如果您使用的是标准版Android(即不是 AOSP),则默认情况下无法获得root权限。生根电话的步骤因制造商和版本而异,有时您可以在线查找说明。也就是说,它不是官方支持的,可能会损坏您的手机。

也就是说,如果不这样做,您就无法在没有root的情况下访问应用程序的数据库,因为您的应用程序的数据目录仅限于您的应用程序。如果您需要访问它,请尝试让您的应用程序将数据库存储在某些位置,例如/sdcard或通常可访问的等效目录。这样做的缺点是任何应用程序都可以访问它,所以要小心你在生产中放置它。