You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

求助:Android 8 AVD模拟器Data文件夹无法访问的原因

解决Android 8 AVD Data文件夹无法查看的问题

我之前在Android Studio 3.0搭配Android 8 AVD时也碰到过一模一样的问题,给你几个实用的解决思路:

  • 检查AVD的Root权限设置
    Android 8(API 26)的默认AVD并没有开启Root权限,而data目录需要Root权限才能完整访问。你可以这么操作:

    • 如果是新建AVD:创建时展开「Show Advanced Settings」,在「Device State」里勾选「Rooted」选项,再启动模拟器。
    • 如果是已有的AVD:找到你的AVD配置文件夹(一般在C:\Users\<你的用户名>\.android\avd\<你的AVD名称>.avd\),打开config.ini文件,把hw.root=no改成hw.root=yes,保存后重启模拟器。
  • 改用Android Studio内置的Device File Explorer
    Android Studio 3.0已经自带了更稳定的Device File Explorer,完全可以替代旧的DDMS。你可以通过「View > Tool Windows > Device File Explorer」打开它,然后导航到data/data/<你的应用包名>/databases/,就能直接看到你的SQL数据库文件了。注意只有Debug版本的应用才能访问自己的data目录,Release版本会有权限限制。

  • 重启DDMS或模拟器
    有时候DDMS和模拟器的连接会出现异常,导致文件加载失败。你可以先关闭Android Device Monitor,再重新打开;或者直接重启模拟器,等模拟器完全启动后再打开File Explorer试试。

  • 用adb命令行导出数据库
    如果上面的方法都不行,试试用adb命令把数据库拉到本地查看:

    1. 打开命令提示符,进入adb所在目录(通常是C:\Users\<你的用户名>\AppData\Local\Android\Sdk\platform-tools
    2. 执行命令:adb shell
    3. 切换到你的应用进程:run-as <你的应用包名>(仅Debug应用支持此命令)
    4. 进入数据库目录:cd databases
    5. 查看数据库文件:ls
    6. 退出shell:exit
    7. 拉取文件到本地:adb pull /data/data/<你的应用包名>/databases/<数据库文件名> C:\你想要保存的本地路径

内容的提问来源于stack exchange,提问作者Cyrus the Great

火山引擎 最新活动