private int excuteSuCMD(String cmd) {
try {
Process process = Runtime.getRuntime().exec("su");
DataOutputStream dos = new DataOutputStream(
(OutputStream) process.getOutputStream());
// 部分手机Root之后Library path 丢失,导入path可解决该问题
dos.writeBytes((String) "export LD_LIBRARY_PATH=/vendor/lib:/system/lib\n");
cmd = String.valueOf(cmd);
dos.writeBytes((String) (cmd + "\n"));
dos.flush();
dos.writeBytes("exit\n");
dos.flush();
process.waitFor();
int result = process.exitValue();
return (Integer) result;
} catch (Exception localException) {
localException.printStackTrace();
return -1;
}
}
android执行命令行函数
例子:
excuteSuCMD("pm install -r /mnt/usb_storage/xxx.apk"),安装U盘下的xxx.apk
本文介绍了一个用于在Android环境中执行命令行操作的函数。通过调用Runtime.getRuntime().exec()方法并利用DataOutputStream进行数据写入,可以实现如安装U盘下的apk等操作。此函数还考虑了部分手机Root后Library路径丢失的问题。
742

被折叠的 条评论
为什么被折叠?



