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

qncylg1j  于 2022-09-21  发布在  Android
关注(0)|答案(2)|浏览(479)

我正在使用chmod命令更改文件的权限,但它在我的代码中不起作用,我的设备也是根植的:

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

但是文件是存在的,当我使用这段代码更改数据库目录中另一个文件的权限时它成功了,那么我现在能做什么呢?

hrysbysz

hrysbysz1#

1.先做RootTools.isAccessGiven()检查,然后系统会以对话框的方式请求“Root”权限。在允许超级用户之后,您是否可以成功运行超级用户命令。
2.“\”“+MyFilePath+”\“”=>MyFilePath

ac1kyiln

ac1kyiln2#

在ADB外壳中使用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();
}

相关问题