Android Device Monitor 的 File Explorer 中痴脾,列出了模擬器內(nèi)的各種文件與文件夾,有的文件夾旁邊明明有箭頭符號梳星,然而卻打不開赞赖,比如下面的 data 文件夾:
1 分析
因?yàn)?Android 的底層是 linux,所以每個文件夾都是有權(quán)限控制的冤灾,比如 data 的 Permissions(權(quán)限)是 drwxrwx--x
我們來解釋一下:
- 第一個字符表示的是文件類型前域。如果是 d,則表示是文件夾韵吨。
- 后面跟著三個三元組匿垄。
- 共 10 個字符。
三個三元組各有不同的含義:
- 第一個組表示文件所有者的權(quán)限归粉。
- 第二個組表示文件的組權(quán)限椿疗。
- 第三個組表示所有其他用戶權(quán)限。
三元組字符的含義(順序是 rwx
):
-
r
- 允許讀(read) -
w
- 允許寫(write) -
x
- 允許執(zhí)行(execute) -
-
- 沒有上述某種權(quán)限(與位置有關(guān))
2 解決
使用 Android SDK 中的 adb糠悼,為文件夾設(shè)置訪問權(quán)限届榄。
1、把 platform-tools 文件夾設(shè)置為環(huán)境變量:
找到 Android SDK 的安裝路徑倔喂,如果用的是 Android Studio铝条,可以在 File → Settings → Android SDK 中找到安裝路徑:
把它設(shè)置為系統(tǒng)環(huán)境變量:
并加入 path靖苇。
2、打開 cmd班缰,輸入以下命令贤壁,為 data 文件夾設(shè)置相應(yīng)的權(quán)限:
備注:輸入兩次 exit,就能退出到 windows 盤符下鲁捏。
這時芯砸,我們再打開 Android Device Monitor 的 File Explorer(會自動刷新),就可以正常打開 data 文件夾啦:
3 命令解析
adb shell
:打開 adb shell 程序给梅。
su
:獲取 root 權(quán)限假丧。
chmod 權(quán)限 文件夾
:為文件夾設(shè)置權(quán)限。
這里的 775动羽,表示的是 rwxrwxr-x包帚,每一個數(shù)字表示的是一個二進(jìn)制數(shù),比如 7运吓,即 111渴邦,表示為這一個三元組設(shè)置所有的 rwx 權(quán)限。
更簡單的做法是直接使用命令:
adb root
這樣就不用一層一層文件夾設(shè)置權(quán)限啦O(∩_∩)O哈哈~