您的位置:首页 > 移动开发 > Android开发

android通过获取root权限实现静默安装、

2013-06-13 10:47 661 查看
因为个人习惯原因、习惯性的把他写成静态方法、存放在工具类里面、方便直接调用、现在把该方法提出来、可直接通过命令来实现静默安装(pm install *.apk)、

/**
* 请求ROOT权限后执行命令(最好开启一个线程)
* @param cmd	(pm install -r *.apk)
* @return
*/
public static boolean runRootCommand(String cmd) {
Process process = null;
DataOutputStream os = null;
BufferedReader br = null;
StringBuilder sb = null;
try {
process = Runtime.getRuntime().exec("su");
os = new DataOutputStream(process.getOutputStream());
os.writeBytes(cmd+"\n");
os.writeBytes("exit\n");
br = new BufferedReader(new InputStreamReader(process.getInputStream()));

sb = new StringBuilder();
String temp=null;
while((temp = br.readLine())!=null){
sb.append(temp+"\n");
if("Success".equalsIgnoreCase(temp)){
LogUtils.logE("----------"+sb.toString());
return true;
}
}
process.waitFor();
} catch (Exception e) {
LogUtils.logE("异常:"+e.getMessage());
}
finally {
try {
if (os != null) {
os.flush();
os.close();
}
if(br!=null){
br.close();
}
process.destroy();
} catch (Exception e) {
return false;
}
}
return false;
}


ps:LogUtils.logE();方法只是将Log.E();进行了再次的封装、

希望通过这段代码可以举一反三、在获取root权限下、实现静默安装卸载也就都只是命令而已了、
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: