|   /**   *   * @param apkFilePath 安装包路径   * @return true 、false   */    public boolean installByADB(String apkFilePath){      boolean success = false;      if (apkFilePath == null || apkFilePath.equals("")) {return success;}      File apkFile = new File(apkFilePath);      if (!apkFile.exists() || apkFile.isDirectory()) {return success;}      String[] args = { "pm", "install", "-r", "-d", apkFilePath };      ByteArrayOutputStream eBAout = new ByteArrayOutputStream();      ByteArrayOutputStream nBAout = new ByteArrayOutputStream();      ProcessBuilder processBuilder = null;      java.lang.Process process = null;      InputStream eis = null;      InputStream is = null;      int num = 0;      byte[] buffer = new byte[1024];      try {        processBuilder = new ProcessBuilder(args);        process = processBuilder.start();        eis = process.getErrorStream();        while ((num = eis.read(buffer)) != -1) {          eBAout.write(buffer, 0, num);        }        is = process.getInputStream();        while ((num = is.read(buffer)) != -1) {          nBAout.write(buffer, 0, num);        }        String error = eBAout.toString("UTF-8");        String normal = nBAout.toString("UTF-8");        if(normal != null && normal.contains("Success")){success = true;}      } catch (IOException e) {      } catch (Exception e) {      } catch (Throwable t) {      } finally {        try {          if (null != eis) {eis.close();}        } catch (Exception e) {}        try {          if (null != is) {is.close();}        } catch (Exception e) {}          process.destroy();        }        return success;     }   |