即使在我的设备上的chmod 777之后,也不能adb拉数据库

即使更改了权限,我也无法从设备中获取数据库。 我有一个根深蒂固的电话。 它曾经工作。 我以前可以拉。 因为一些不为人知的原因,现在我不能。

我收到的错误是remote object '/data/data/com.thuptencho.transitbus/databases/ttc.db' does not exist

有人知道这是为什么吗? 以下是我在命令窗口中所做的。

 C:\users\thupten>adb shell shell@android:/ $ su su root@android:/ # cd /data/data/com.thuptencho.transitbus/databases/ cd /data/data/com.thuptencho.transitbus/databases/ root@android:/data/data/com.thuptencho.transitbus/databases # ls ls ttc.db ttc.db-journal webview.db webview.db-journal webviewCookiesChromium.db webviewCookiesChromiumPrivate.db root@android:/data/data/com.thuptencho.transitbus/databases # chmod 755 ttc.db 5 ttc.db < root@android:/data/data/com.thuptencho.transitbus/databases # chmod 777 ttc.db 7 ttc.db < root@android:/data/data/com.thuptencho.transitbus/databases # exit exit shell@android:/ $ exit exit C:\users\thupten>adb pull /data/data/com.thuptencho.transitbus/databases/ttc.db remote object '/data/data/com.thuptencho.transitbus/databases/ttc.db' does not exist 

  • 如何使用`adb`仅为一个用户安装开发应用程序?
  • 在Windows 7上使用Jelly Bean 4.1模拟器在ADB中运行systrace工具时出错
  • adb:加载共享库时出错:libncurses.so.5:无法打开共享对象文件:没有这样的文件或目录
  • 如何使用adb pull从Android复制选定的文件
  • 设置adb供应商密钥
  • 无法使用adb连接到LG手机(Mac OS X 10.7.5)
  • Android 4.2.2 adb找不到设备
  • 未find命令:adb从adb的目录执行时
  • 我使用这些命令从/ data / data文件夹获取数据,不需要更改权限

     adb kill-server adb root 

    我想到了。 我不得不chmod数据库文件夹以及文件。

    问题是你不仅需要文件的权限,还需要权限到它的父目录。

    (虽然这个权限不应该是777!)

    而不是试图改变权限,你可能想要做的是让adb以根用户身份运行(如果你有一个工程构build,而不是一个安全设备的“售后”生根),或者使用你的根访问权限(或者应用程序本身,或者如果你有一个debugging版apk,则运行股票的命令)复制感兴趣的文件到某个可访问的地方,然后adb提取副本。

    我的首选解决scheme是:

    安装Chainfire的adbd不安全的应用程序在adbd不安全的应用程序中,select“启用不安全的adbd”adb pull /data/data/com.package.name/databases/database.db

    警告 – adb不安全意味着adb在您的设备上以root身份运行。

     for i in `adb shell ls /data/ -1`;do adb pull /data/$i data; done