【发布时间】:2011-03-16 12:48:43
【问题描述】:
我已经植根我的设备并且我已经安装了busybox。现在我想通过我的应用程序访问 /data 文件夹文件。我的应用程序具有超级用户权限,但我仍然无法访问文件。 任何人都知道如何做到这一点(有或没有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();
【问题讨论】:
-
你的编程相关问题是什么?
-
@Mudassir:我尝试了一些方法,但我无法访问文件,就像我使用命令将文件复制到 sdcard 然后我得到权限被拒绝异常但我只在数据文件夹中使用 ls 命令它很容易给我所有文件夹的列表,没有任何错误
-
if((new File("/data/bin/su")).exists()) SU_COMMAND = "/data/bin/su";否则 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";进程进程 = (new ProcessBuilder(as)).start();运行时 rt = Runtime.getRuntime(); java.io.OutputStream outputstream = process.getOutputStream(); outputstream.write(command1.getBytes()); outputstream.flush();
-
确定它正在执行,但它返回什么,是真还是假?
-
你从来没有在这段代码中真正运行过 su。
标签: java android file directory