android程序后台自动安装代码
发布时间:2020-12-15 00:29:07 所属栏目:Java 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 首先增加权限 : !– 以下是静默安装apk所需要到权限 – uses-permission android:name=“android.permission.INSTALL_PACKAGES” / uses-permission
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考
首先增加权限 :
<!– 以下是静默安装apk所需要到权限 –> <uses-permission android:name=“android.permission.INSTALL_PACKAGES” /> <uses-permission android:name=“android.permission.DELETE_PACKAGES” /> <uses-permission android:name=“android.permission.CLEAR_APP_CACHE” /> <uses-permission android:name=“android.permission.CLEAR_APP_USER_DATA” /> <uses-permission android:name=“android.permission.READ_PHONE_STATE” /> /** * 软件静默安装 * @param apkAbsolutePath apk文件所在路径 * @return 安装结果:获取到的result值<br> * * 如果安装成功的话是“ * pkg: /data/local/tmp/Calculator.apk /nSuccess”,<br> * 如果是失败的话,则没有结尾的“Success”。 */ public String silentInstall(String apkAbsolutePath) { String[] args = { “pm”,“install”,“-r”,apkAbsolutePath }; String result = “”; ProcessBuilder processBuilder = new ProcessBuilder(args); Process process = null; InputStream errIs = null; InputStream inIs = null; try { ByteArrayOutputStream baos = new ByteArrayOutputStream(); int read = -1; process = processBuilder.start(); errIs = process.getErrorStream(); while ((read = errIs.read()) != -1) { baos.write(read); } baos.write(“/n”.getBytes()); inIs = process.getInputStream(); while ((read = inIs.read()) != -1) { baos.write(read); } byte[] data = baos.toByteArray(); result = new String(data); } catch (IOException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { try { if (errIs != null) { errIs.close(); } if (inIs != null) { inIs.close(); } } catch (IOException e) { e.printStackTrace(); } if (process != null) { process.destroy(); } } return result; } 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |