Android 设备监视器 "data"文件夹为空

标签 android sqlite android-studio

我已经测试了在我的应用程序数据库中创建、插入和检索数据,并且知道它可以通过使用 Log 语句来工作。

但是,我希望加快测试并使用 Android 设备监视器。但是,虽然db存在,数据也存了,但是在下面访问时,data文件夹是空的:

enter image description here

为什么会这样?如何将其配置为显示 db 文件和内容?

最佳答案

使用模拟器解决问题

文件夹/data可以为空,因为您缺少适当的权限。为了解决这个问题,我不得不执行以下命令。

adb shell
su

这些命令会在模拟器中启动一个 shell 并授予您 root 权限。命令adb位于文件夹 platform-tools Android SDK,通常安装在 ~/Library/Android/sdk/在 MacOS 上。

chmod -R 777 /data

修改文件夹(及递归子文件夹)的权限/data为了使它们出现在工具 Aandroid 设备监视器中。

adb root

最后,这条命令重新启动 adb作为根。请注意,它仅适用于开发版本(通常是模拟器版本)。

之后可以看到文件夹/data的内容并传输位于其中的数据。您也可以在控制台中执行此操作,使用 adb pull <remote> <locale> ,如:

adb pull /data/data/<app name>/databases/<database> .

关于Android 设备监视器 "data"文件夹为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34603355/

相关文章:

java - 将 Array<Object> 从一个 Activity 传递到另一个 Activity

android - System.out.print with//打印代码 Blue。这是什么意思?

java - Android:AlertDialog 按钮不接受样式

android - 如何在 Android 的 TextView 中缩进文本行?

python - 在 sqlite 值中插入变量

android - 使用 ORM 向 Android 上的 SQLite 数据库添加大量数据

sql - 如何在SQLite中减去2列?

java - 将 Android Studio 更新到 fox 2020.3.1 后主题插件不起作用

android - Cordova 平台安装 : iOS broken

android - 如何使默认相机应用程序在拍照后继续运行而不返回应用程序?