
有时使用第三方插件时,我们需要静默安装其提供的apk软件包. 静默安装时,我们需要获得root权限,如以下代码所示

Process process = Runtime.getRuntime().exec("su");
然后,此时获得的root权限不是整个应用程序安装超级用户安装超级用户,而是Process进程

因此,当前必须执行的与root权限相关的操作必须通过Process流程获得
ps: 文件是SD卡中文件的文件类型

下面
DataOutputStream dataOutputStream = new DataOutputStream(process.getOutputStream();); //执行777 linux命令获取文件的最高权限 dataOutputStream.writeBytes("chmod 777 " + file.getPath() + "\n"); // 获取文件所有权限 dataOutputStream .writeBytes("LD_LIBRARY_PATH=/vendor/lib:/system/lib pm install -r " + file.getPath()); // 进行静默安装命令 // 提交命令 dataOutputStream.flush(); // 关闭流操作 dataOutputStream.close(); out.close(); int value = process.waitFor(); // 代表成功 if (value == 0) { Log.e("hao", "安装成功!"); result = true; } else if (value == 1) { // 失败 Log.e("hao", "安装失败!"); result = false; } else { // 未知情况 Log.e("hao", "未知情况!"); result = false; }

value值可以判断安装是否成功
注意: 尝试捕获异常捕获代码未编写,您可以自己添加
//没有吸引力的分隔线
正常安装
以普通模式安装,调用系统Intent
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-252011-1.html
由于信息情报获取的能力的不足
这个教授是跟他兄弟合娶的老婆吧