【问题标题】:Android Studio DDMS can't open /data folder in an emulator phoneAndroid Studio DDMS 无法在模拟器手机中打开 /data 文件夹
【发布时间】:2017-11-11 05:50:10
【问题描述】:

我最近用Android Studio创建了一个模拟器设备,但是发现我无法打开/data/data文件夹来获取sqlite db文件。文件夹无法打开,我尝试使用shell脚本对 /data 目录进行 chmod,但它说找不到 su 命令。

The Emulator

Can't open!

有人遇到同样的问题吗?或者我必须root模拟器? 但它是一个模拟器!我只是觉得root模拟器有点不方便!

【问题讨论】:

    标签: android-studio android-emulator root ddms


    【解决方案1】:

    使用管理员权限打开 DDMS。有同样的问题,它解决了。 最快的方法是打开具有管理员权限的 android studio 并从那里打开 DDMS。

    否则,看看这个链接Android device monitor

    【讨论】:

      【解决方案2】:

      使用 adb 对模拟器设备进行 root。完成后,您将有权访问 data\data 文件夹

      adb shell
      su
      

      adb 工具将出现在 Users\\AppData\Local\Android\sdk1\platform-tools 中

      打开cmd,将目录切换到上面的文件夹,输入上面的代码 重启 Android 设备监视器(如果需要)

      【讨论】:

      • 这个我试了好几次都不行 $ adb shell generic_x86:/ $ su /system/bin/sh: su: not found 127|generic_x86:/ $ sudo /system/ bin/sh: sudo: 未找到 127|generic_x86:/ $ root /system/bin/sh: root: 未找到
      【解决方案3】:

      即使在以管理员身份运行 Android Studio 后,如果您无法访问数据/数据文件夹,请尝试为您的模拟器设备使用 API 23 或更低版本。

      【讨论】:

        【解决方案4】:

        更新

        不记得是Android Studio 3.0还是更高版本,但如果你下载了AS 3.3+,你会在右下角找到名为Device File Explorer的标签,可以让你查看并轻松获取数据你的应用程序没有生根。


        以管理员身份打开并没有帮助,但手机 root 确实有效,不,我没有降低我的 SDK 版本。

        打开 cmd 并转到 C:\Users\{User}\AppData\Local\Android\Sdk\platform-tools 或文件夹位置并在地址栏输入cmd

        你是不是超级用户可以通过$判断:

        C:\{User}\...\platform-tools>adb shell
        generic_x86:/ $ exit
        

        要拥有 su/root 权限,请输入 adb root 并退出:

        C:\{User}\...\platform-tools>adb root
        generic_x86:/ # exit
        

        接下来运行 Android Device Monitor 以提取数据。

        要关闭根类型adb unroot

        【讨论】:

          【解决方案5】:

          工具选项下不再提供使用 Android Studio 3.1.2 和 DDMS。相反,Android Studio 在右下角提供了“设备文件资源管理器”选项卡(我知道为什么把它放在那里)。

          单击“设备文件资源管理器”选项卡并选择您要探索的 Android 设备。要实际访问这些文件,请确保在 AVD 中打开 USB 调试。

          如果这不起作用,您需要使用终端面板。

          1. 通过 adb shell 更改文件夹权限(使用 chmod 命令)
          2. 使用拉取文件 “亚行拉”。参见示例:

          C:\Users\B\AppData\Local\Android\sdk\platform-tools> adb pull /data/data/com.example.b.expensewatcher/databases/myexpenses.db

          /data/data/com.example.b.expensewatcher/databases/myexpenses.db:拉取 1 个文件。 3.3 MB/s(0.007 秒内 24576 字节)

          有关更改文件夹权限的详细信息,请参阅:https://www.dev2qa.com/android-device-monitor-cannot-open-data-folder-resolve-method/

          【讨论】:

            【解决方案6】:

            您可以通过打开 IDE 右下角的“设备文件资源管理器”从 android studio 访问数据文件夹,而不是 root 安卓手机。 打开 'data>data>packagename>databases' 您可以保存数据库文件,但这将采用加密形式。您可以直接从 PC 上的文件资源管理器访问它。

            为 SQLite 安装 DB Browser 并选择“打开数据库”选项。

            连接您的安卓设备并启用“文件传输”。转到安装了您的 android studio 的目录,即在我的案例文档中。那么,

            C:\Users\prana\Documents\AndroidStudio\DeviceExplorer\xiaomi-redmi_note_4-164594b\data\data\com.android.packagename\databases

            您可以在此处找到您的数据库。

            希望对你有帮助!

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2020-07-01
              • 1970-01-01
              • 1970-01-01
              • 2016-03-01
              • 2020-01-10
              • 2018-03-27
              • 1970-01-01
              相关资源
              最近更新 更多