Android eclipse DDMS - 无法访问手机上的数据/数据/来提取文件

时间:2011-02-01 20:01:26

标签: android eclipse

在测试我的应用时,我使用模拟器和自己的手机来查看一切是否正常。我的应用程序还将数据写入共享首选项和文本文件。

我可以通过eclipse中的DDMS从模拟器中提取数据,这样我就可以读取计算机上的数据文件,但是当我尝试通过手机上的DDMS打开这些文件夹时,什么都没发生。我点击数据文件夹,没有任何反应。

我的手机扎根了。有什么方法可以从我的手机中提取文件吗?我知道Android会将这些文件夹保密,但必须有办法。模拟器只是方式太慢了。

10 个答案:

答案 0 :(得分:162)

rooted 设备上,您可以执行以下操作:

  1. 打开cmd
  2. 输入adb shell
  3. su
  4. 按设备上的“允许”
  5. chmod 777 /data /data/data /data/data/com.application.package/data/data/com.application.package/*
  6. 转到Eclipse中的DDMS视图
  7. 在此之后,您应该可以浏览设备上的文件。

    获取数据库:

    1. chmod 777 /data/data/com.application.package/databases /data/data/com.application.package/databases/*

    2. 如果它在permission denied

      上返回su

      转到Settings> Developer Options> Root access> Apps and ADB

答案 1 :(得分:6)

似乎没有人理解零售的Nexus One即使在root之后仍然不允许您使用DDMS文件资源管理器浏览文件系统。我们在这里讨论的是真正的手机而不是模拟器。如果您碰巧拥有Nexus One开发者手机,您可以使用DDMS Filer Explorer浏览文件系统,但是已经根植于您的零售Nexus One无法访问。得到它了?

所以我希望能够解决无法使用DDMS文件资源管理器来浏览根源零售Nexus One的文件系统的问题。在为零售Nexus One生根之后,仍然需要做一些事情来使用DDMS来使用文件资源管理器来浏览电话文件系统。我不知道它是什么。也许别人知道。

答案 2 :(得分:5)

如果在adb shell上提供“权限被拒绝” - >苏...

某些ROM以安全模式运行adbd守护程序(adbd没有root访问权限,su命令甚至没有在设备上显示权限询问对话框)。在这种情况下,当您尝试使用cmd时,您将获得“权限被拒绝” - > adb shell - >苏。我找到的解决方案是来自着名的改装者Chainfire的一款名为Adbd Insecure的应用程序。

答案 3 :(得分:3)

您必须编辑数据文件夹的权限。

我在root模式下使用“Root Explorer”(参见市场)app。

在顶部选择“Monunted as r / w”

然后按下数据文件夹(长按)并找到权限选项

像这样的那种

        read    write  execute

用户

其他

确保“其他人”检查了读取

然后去Eclpse再试一次。

对不起我的英语,我希望可以帮助你。

答案 4 :(得分:2)

设置data文件夹及其所有子文件夹和文件的权限:
从ADB文件夹打开命令提示符:

>> adb shell
>> su
>> find /data -type d -exec chmod 777 {} \;

答案 5 :(得分:2)

比安卓FS中的messing around with permissions更简单(总是感觉像是  对我来说是一个黑客 - 因为我相信必须有一种integrated way只是为了:

允许ADB root accessRestart the deamonroot permissions

  1. 首先确保ADB可以在您的设备(或模拟器)上具有root访问权限:
    Settings - > Developer Options - > Root-Access for ADBApps & ADB
  2. 使用root权限重新启动ADB服务:
    打开command prompt并输入:adb.exe root
  3. 重新启动ADM(Android设备管理器):
    Enjoy浏览所有文件
  4. 否定这个过程:
    adb.exe unroot
  5. 中输入command prompt

答案 6 :(得分:1)

事件虽然现在为时已经太晚了,但是我会留下对我有用的东西。

Peceps的解决方案不起作用,因为SuperUser应用程序不允许“shell”具有root访问权限。所以我的解决方案是直接使用RootExplorer之类的其他应用程序并从中浏览文件夹。

答案 7 :(得分:1)

如果它在adb shell上退回“权限被拒绝” - >的 ...

转到“开发者选项” - >根访问 - > “应用和ADB”

答案 8 :(得分:0)

当我说文件系统时,我指的是整个文件系统。但是你只能在零售手机上浏览部分文件系统,甚至可能是大部分文件系统而不是./data。很抱歉这可能导致任何混淆。

这对我来说是令人担忧的,因为我的零售Nexus One和开发者/解锁的Nexus One已经扎根。由于我根据我的零售Nexus One,我无法弄清楚为什么我无法在我的开发人员Nexus One上浏览整个文件系统。

答案 9 :(得分:-3)

如果你需要在手机上进行,我使用终端模拟器和标准的linux命令。

示例:

  1. cd data
  2. cd com.yourappp
  3. ls或cd into cache / shared_prefs
  4. http://www.appbrain.com/app/android-terminal-emulator/jackpal.androidterm