当前位置:   article > 正文

安卓静默安装_tbrapkpath

tbrapkpath

 

  1. /**
  2.      * 执行具体的静默安装逻辑,需要手机ROOT。
  3.      * @param apkPath
  4.      *          要安装的apk文件的路径
  5.      * @return 安装成功返回true,安装失败返回false。
  6.      */
  7.     public boolean install(String apkPath) {
  8.         boolean result = false;
  9.         DataOutputStream dataOutputStream = null;
  10.         BufferedReader errorStream = null;
  11.         try {
  12.             // 申请su权限
  13.             Process process = Runtime.getRuntime().exec("sh");
  14. //            process.waitFor();
  15.             dataOutputStream = new DataOutputStream(process.getOutputStream());
  16.             // 执行pm install命令
  17.             String command = "pm install -r " + apkPath + "\n";
  18.             dataOutputStream.write(command.getBytes(Charset.forName("utf-8")));
  19.             dataOutputStream.flush();
  20.             dataOutputStream.writeBytes("exit\n");
  21.             dataOutputStream.flush();
  22.             process.waitFor();
  23.             errorStream = new BufferedReader(new InputStreamReader(process.getErrorStream()));
  24.             String msg = "";
  25.             String line;
  26.             // 读取命令的执行结果
  27.             while ((line = errorStream.readLine()) != null) {
  28.                 msg += line;
  29.             }
  30.             Log.d("TAG", "install msg is " + msg);
  31.             // 如果执行结果中包含Failure字样就认为是安装失败,否则就认为安装成功
  32.             if (!msg.contains("Failure")) {
  33.                 result = true;
  34.             }
  35.         } catch (Exception e) {
  36.             e.printStackTrace();
  37.         } finally {
  38.             try {
  39.                 if (dataOutputStream != null) {
  40.                     dataOutputStream.close();
  41.                 }
  42.                 if (errorStream != null) {
  43.                     errorStream.close();
  44.                 }
  45.             } catch (IOException e) {
  46.                 e.printStackTrace();
  47.             }
  48.         }
  49.         return result;
  50.     }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/675676
推荐阅读
相关标签
  

闽ICP备14008679号