如何使用 chmod 更改 Android 中文件的权限

问题描述 投票:0回答:2

我正在使用 chmod 命令来更改文件的权限,但它在我的代码中不起作用,而且我的设备也已获得 root 权限:

String MyFilePath = "/data/data/MyPkgName/database/com.pocketchange.android.http.AsyncHttpRequestService.db";
CommandCapture command = new CommandCapture(0, "chmod  777 " + "\""+ MyFilePath+ "\"");
RootTools.getShell(true).add(command).waitForFinish();

执行时,命令输出为:

Unable to chmod /data/data/MyPkgName/databases/com.pocketchange.android.http.AsyncHttpRequestService.db: No such file or directory

但是该文件是存在的,当我使用此代码更改数据库目录中另一个文件的权限时成功,那么我现在该怎么办。

android unix chmod roottools
2个回答
0
投票

1.先进行RootTools.isAccessGiven()检查,然后系统会以Dialog的方式请求“Root”权限。允许root后就可以成功运行root命令了。
2."\""+ 我的文件路径+ "\""=> 我的文件路径


0
投票

在 ADB shell 中使用 chmod 命令...

String[] strExec = new String[] 
{ 
       "/system/bin/sh", "-c","/system/bin/chmod 777
};

try {
    Runtime.getRuntime().exec(strExec);
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
© www.soinside.com 2019 - 2024. All rights reserved.