Android Device Monitor 的 File Explorer 中,列出了模拟器内的各种文件与文件夹,有的文件夹旁边明明有箭头符号,然而却打不开,比如下面的 data 文件夹:

Android 打开系统文档 android 打开文件夹_环境变量

1 分析

因为 Android 的底层是 linux,所以每个文件夹都是有权限控制的,比如 data 的 Permissions(权限)是 drwxrwx--x

我们来解释一下:

第一个字符表示的是文件类型。如果是 d,则表示是文件夹。

后面跟着三个三元组。

共 10 个字符。

三个三元组各有不同的含义:

第一个组表示文件所有者的权限。

第二个组表示文件的组权限。

第三个组表示所有其他用户权限。

三元组字符的含义(顺序是 rwx):

r - 允许读(read)

w - 允许写(write)

x - 允许执行(execute)

- - 没有上述某种权限(与位置有关)

2 解决

使用 Android SDK 中的 adb,为文件夹设置访问权限。

1、把 platform-tools 文件夹设置为环境变量:

找到 Android SDK 的安装路径,如果用的是 Android Studio,可以在 File → Settings → Android SDK 中找到安装路径:

Android 打开系统文档 android 打开文件夹_三元组_02

Android SDK 配置

把它设置为系统环境变量:

Android 打开系统文档 android 打开文件夹_环境变量_03

系统环境变量

并加入 path。

2、打开 cmd,输入以下命令,为 data 文件夹设置相应的权限:

Android 打开系统文档 android 打开文件夹_环境变量_04

设置权限

备注:输入两次 exit,就能退出到 windows 盘符下。

这时,我们再打开 Android Device Monitor 的 File Explorer(会自动刷新),就可以正常打开 data 文件夹啦:

Android 打开系统文档 android 打开文件夹_android系统应用打不开文件夹_05

访问 data 文件夹

3 命令解析

adb shell :打开 adb shell 程序。

su :获取 root 权限。

chmod 权限 文件夹:为文件夹设置权限。

这里的 775,表示的是 rwxrwxr-x,每一个数字表示的是一个二进制数,比如 7,即 111,表示为这一个三元组设置所有的 rwx 权限。

更简单的做法是直接使用命令:

adb root

这样就不用一层一层文件夹设置权限啦O(∩_∩)O哈哈~