Android Studio 中DDMS无法显示文件树以及data文件夹中文件无法导出解决方法

今天学习了Android开发教程《第一行代码》第6.2.1节,这一节讲的是把数据存储到文件中。我按照教程编写好代码后运行程序,测试结果时出现了问题。现在描述一下问题:按照教程描述,运行程序后可以打开Android Device Monitor工具,在里面的File Explorer标签页能够查找到程序生成的文件data。我按照教程上做了,但是发现File Explorer标签页下面什么都没有(打开File Explorer时,Android的模拟器必须打开状态才能查看文件),这是不是一个非常蛋疼的问题。


接下来我从网上寻找解决方法,找到了https://segmentfault.com/a/1190000008416511这个上面介绍的方法,按照这篇文章上的方法解决了File Explorer标签页显示文件树的问题。

接下来因为权限的问题想要对文件进行操作还是不可行的,必须先获取root权限。文章的末尾会给出获取root权限的方法,下面的文章介绍了我解决这个问题的坎坷过程,感兴趣的朋友可以看一下。


把我程序生成的data文件导出到电脑桌面,但是却发现没有任何响应。这是因为权限不足导致的,上面的文章中也说到了这个问题,解决方法就是修改权限。我按照上面文章中的步骤修改权限,但是修改失败。修改提示如下的问题,文件夹的权限并没有改变(这里注意了,一定要把命令行定位到platform-tools文件夹):

Android Studio 中DDMS无法显示文件树以及data文件夹中文件无法导出解决方法_第1张图片

如果你不想在命令行中通过cd指令一层一层的进入到platform-tools文件夹,可以使用如下快捷方式进入:在platform-tools目录下面按住shift键右击:选择在此处打开命令窗口,这样进入命令行模式时就自动定位到这个目录了。

Android Studio 中DDMS无法显示文件树以及data文件夹中文件无法导出解决方法_第2张图片


言归正传,上面修改所有的权限没有成功,我修改了data文件夹和/data/data文件夹的权限,

Android Studio 中DDMS无法显示文件树以及data文件夹中文件无法导出解决方法_第3张图片

这下就可以查看data文件夹下面的文件了。我找到了我需要的文件:

Android Studio 中DDMS无法显示文件树以及data文件夹中文件无法导出解决方法_第4张图片

接下来按照教程把这个文件导出到电脑桌面时(点击按钮1,提示错误如2),遇到了如下问题:

Android Studio 中DDMS无法显示文件树以及data文件夹中文件无法导出解决方法_第5张图片


接着又是一通网上找答案,网上给出的解决方法大部分都是修改文件的权限,可是这个文件的权限已经是最大权限了呀。网上提出了可以使用adb pull命令把这个文件复制出来,我按照网上给的复制命令进行了测试,结果没有成功。


又经过一阵不懈的努力,终于找到了解决方法:模拟机默认下是没有读写权限的,如果需要对模拟器中的文件进行操作,首先要把模拟器改成能够读写权限。修改模拟器权限的指令如图2所示为:先输入adb root指令,在使用adb remount指令。出现remount success表示模拟器权限修改成功。

Android Studio 中DDMS无法显示文件树以及data文件夹中文件无法导出解决方法_第6张图片


修改了模拟器的读写权限后,使用adb pull命令就可把复制文件到电脑桌面了(我这里复制了整个文件夹里面的文件),也可以使用导出功能直接导出文件了(这里可能要重新打开以下Android Device Monitor)。(点击按钮1导出data文件成功了)

Android Studio 中DDMS无法显示文件树以及data文件夹中文件无法导出解决方法_第7张图片



好了,看到这里你已经把我解决这个问题的坎坷过程了解了。总结一下吧,在File Explorer中看到文件树之后,接下来的你想要对文件进行任何操作只需要获取root权限就可以了。也就是在命令行中输入adb root命令。执行这个命令后你就可以对目录中的文件进行任何操作了,而不需要再修改文件权限这下不必要的操作了。

你可能感兴趣的:(Android开发)