我想编写一个应用程序,它根据安装它的设备,我的意思是通过安装此应用程序,您将能够在没有计算机的情况下使设备生根,就像以下链接中的应用程序一样,
http://www.kingoapp.com/root-tutorials/how-to-root-android-without-computer.htm
我已经搜索了很多关于如何使用Android设备的Java代码进行搜索的内容,但对我来说没有明确的解决方案。根据我的研究,我认为我们需要以下步骤:
1-能够使用Runtime.getRuntime().exec();
2-执行获得root权限的命令(我认为su
,但这需要执行root设备)。
3-启动将根设备的root命令。
我找不到关于如何执行上述步骤的代码说明。我想首先理解这个过程,可以在其中使用的命令,然后我想尝试自己实现它。由于商店中有许多提供此功能的应用程序,因此实施它必须是可行的。
有人可以向我解释如何实施这个过程吗?
此外,是否有可能为相反的进程编写代码,这是解除设备的连接?
感谢任何帮助。
感谢。
答案 0 :(得分:3)
要运行root命令,必须使用以下格式:
public void RunAsRoot(String[] cmds){
Process p = Runtime.getRuntime().exec("su");
DataOutputStream os = new DataOutputStream(p.getOutputStream());
for (String tmpCmd : cmds) {
os.writeBytes(tmpCmd+"\n");
}
os.writeBytes("exit\n");
os.flush();
}
传入一个字符串数组,每个字符串都是需要执行的命令。例如:
String[] cmds = {"sysrw", "rm /data/local/bootanimation.zip", "sysro"};