后台静默安装,就无需写代码调用系统的 PackageInstaller 接口,直接使用指令的方式去执行。
与cmd直接执行 adb install 不同,代码中需要使用 pm 这个系统bin文件

    private void startUpdate() {        Process process = null;        BufferedReader successResult = null;        BufferedReader errorResult = null;        StringBuilder successMsg = new StringBuilder();        StringBuilder errorMsg = new StringBuilder();        try {            **// 7.0以后版本需要额外添加            //           "-i", "当前应用包名",             // 两个字段,并且需要应用支持 android.permission.INSTALL_PACKAGES 权限**            process = new ProcessBuilder("pm", "install", "-i", "当前应用包名", "-r", "sdcard/test.apk").start();            successResult = new BufferedReader(new InputStreamReader(process.getInputStream()));            errorResult = new BufferedReader(new InputStreamReader(process.getErrorStream()));            String s;            while ((s = successResult.readLine()) != null) {                successMsg.append(s);            }            while ((s = errorResult.readLine()) != null) {                errorMsg.append(s);            }        } catch (Exception e) {            Log.e(TAG, "Exception " + e.toString());        } finally {            try {                if (successResult != null) {                    successResult.close();                }                if (errorResult != null) {                    errorResult.close();                }            } catch (Exception e) {            }            if (process != null) {                process.destroy();            }        }        Log.e(TAG, "errorMsg " + errorMsg.toString());        Log.d(TAG, "successMsg " + successMsg.toString());    }

更多相关文章

  1. 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
  2. Nginx系列教程(六)| 手把手教你搭建 LNMP 架构并部署天空网络电影
  3. [译]Android图形系统 II 图形架构
  4. android 获取系统中各种类型音量及对音量设置
  5. Android(安卓)4.2 BT系统之蓝牙关闭过程全跟踪
  6. Android5.0网络子系统
  7. android recovery 系统代码分析【精】
  8. Eclipse集成Android(安卓)NDK开发环境
  9. andriod 源码树

随机推荐

  1. 交换机之vlan详解
  2. Microsoft Visual C++ 14.0 is required
  3. Xpath helper插件
  4. fail2ban 防止暴力破
  5. js基础知识:JS对DOM元素的基本操作,遍历、
  6. Centos 如何安装 nginx
  7. 【DB宝32】Oracle DG环境中主库做闪回操
  8. nginx,tomcat 和 apache 区别
  9. Python操作SQL Server(三)数据表查询和fe
  10. Linux运维实战——MySQL源码包个性化部署