gpt4 book ai didi

java - android中的访问/数据文件夹文件

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:15:45 57 4
gpt4 key购买 nike

我已经 root 了我的设备并安装了 busybox。现在我想通过我的应用程序访问/data 文件夹文件。我的应用程序具有 super 用户权限,但我仍然无法访问文件。谁能知道如何做到这一点(有或没有 busybox)?

请帮帮我。

代码:

if ((new File("/data/bin/su")).exists())
SU_COMMAND = "/data/bin/su";
else
SU_COMMAND = "su";

String command1 = "busybox mount /sdcard \n";
String command2 = "busybox mount /system \n";
String command = "busybox cp /data/data/com.my.test.app/databases/ /mnt/sdcard/testapp/ \n";
Process process = (new ProcessBuilder(as)).start();
Runtime rt = Runtime.getRuntime();
java.io.OutputStream outputstream = process.getOutputStream();
outputstream.write(command1.getBytes());
outputstream.flush();

最佳答案

试试这个:

 private boolean run(boolean runAsRoot, String cmd) {

String shell = runAsRoot ? "su" : "sh";

int exitCode = 255;
Process p;
try {

p = Runtime.getRuntime().exec(shell);
DataOutputStream os = new DataOutputStream(p.getOutputStream());

os.writeBytes(cmd + "\n");
os.flush();

os.writeBytes("exit\n");
os.flush();

exitCode = p.waitFor();

} catch (IOException e1) {
Log.e("Exception", e1.toString());
} catch (InterruptedException e) {
Log.e("Exception", e.toString());
}
return (exitCode != 255);
}

public boolean copyFile() {
return run(true, "busybox cp /data/data/com.my.test.app/databases/ /mnt/sdcard/testapp/");
}

关于java - android中的访问/数据文件夹文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5325469/

57 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com