老大要我弄个自动更新,要用到静默安装,网上找到了些大拿的代码,我拿去改吧改吧,先贴出来:

  1. /**
  2. * 软件静默安装
  3. * @param apkAbsolutePath apk文件所在路径
  4. * @return 安装结果:获取到的result值<br>
  5. *
  6. * 如果安装成功的话是“
  7. * pkg: /data/local/tmp/Calculator.apk  /nSuccess”,<br>
  8. * 如果是失败的话,则没有结尾的“Success”。
  9. */
  10. public String silentInstall(String apkAbsolutePath) {
  11. String[] args = { "pm", "install", "-r", apkAbsolutePath };
  12. String result = "";
  13. ProcessBuilder processBuilder = new ProcessBuilder(args);
  14. Process process = null;
  15. InputStream errIs = null;
  16. InputStream inIs = null;
  17. try {
  18. ByteArrayOutputStream baos = new ByteArrayOutputStream();
  19. int read = -1;
  20. process = processBuilder.start();
  21. errIs = process.getErrorStream();
  22. while ((read = errIs.read()) != -1) {
  23. baos.write(read);
  24. }
  25. baos.write("/n".getBytes());
  26. inIs = process.getInputStream();
  27. while ((read = inIs.read()) != -1) {
  28. baos.write(read);
  29. }
  30. byte[] data = baos.toByteArray();
  31. result = new String(data);
  32. } catch (IOException e) {
  33. e.printStackTrace();
  34. } catch (Exception e) {
  35. e.printStackTrace();
  36. } finally {
  37. try {
  38. if (errIs != null) {
  39. errIs.close();
  40. }
  41. if (inIs != null) {
  42. inIs.close();
  43. }
  44. } catch (IOException e) {
  45. e.printStackTrace();
  46. }
  47. if (process != null) {
  48. process.destroy();
  49. }
  50. }
  51. return result;
  52. }

别急,没完,记得加权限呢:

  1. <!-- 以下是静默安装apk所需要到权限 -->
  2. <uses-permission android:name="android.permission.INSTALL_PACKAGES" />
  3. <uses-permission android:name="android.permission.DELETE_PACKAGES" />
  4. <uses-permission android:name="android.permission.CLEAR_APP_CACHE" />
  5. <uses-permission android:name="android.permission.CLEAR_APP_USER_DATA" />
  6. <uses-permission android:name="android.permission.READ_PHONE_STATE" />

我粘贴过去,哇靠,好多红茶茶~怎么回事,鼠标移上去一看,

  1. permission is only granted to system apps

奇怪类,我这个就是系统应用阿~~找了好久,听见有个声音说要clean下,于是,我clean了一下,

挖靠!@果然没有红茶茶类~后来不知怎么改了下mainfest,又红茶茶类,我又clean了一下,竟然还有用!所以,以后出错了记得先clean下哦。当然,你要是布局文件有错到话那就没办法了,你需要先让布局文件到错误消失掉才能clean。

APP流氓大法之apk 静默安装的更多相关文章

  1. Android 免Root实现Apk静默安装,覆盖兼容市场主流的98%的机型

    地址:http://blog.csdn.net/sk719887916/article/details/46746991 作者: skay 最近在做apk自我静默更新,在获取内置情况下,或者已root ...

  2. android apk静默安装

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/47803149 之前有很多朋友都问过我,在Android系统中怎样才能实现静默安装呢 ...

  3. Android为TV端助力 apk静默安装

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/47803149 之前有很多朋友都问过我,在Android系统中怎样才能实现静默安装呢 ...

  4. apk 静默安装

    老大要我弄个自动更新,要用到静默安装,网上找到了些大拿的代码,我拿去改吧改吧,先贴出来: /** * 软件静默安装 * @param apkAbsolutePath apk文件所在路径 * @retu ...

  5. android开发,关于android app实现静默安装自己(系统签名)

    产品需求,木有办法.android系统是跟厂商定制的,保证系统开机就运行我们的app,并且实现自己静默安装,完全自动化,无需人工操作. 网上有很多办法, 1.要么要通过android 源码拿到密钥文件 ...

  6. Android随笔之——静默安装、卸载

    随笔之所以叫随笔,就是太随意了,说起来,之前的闹钟系列随笔还没写完,争取在十月结束之前找时间把它给写了吧.今天要讲的Android APK的静默安装.卸载.网上关于静默卸载的教程有很多,更有说要调用隐 ...

  7. android 静默安装 卸载 资料汇总

    1. android + eclipse + 后台静默安装(一看就会) 2. 适用于android1.5以下版本apk静默安装 3. error: INSTALL_FAILED_SHARED_USER ...

  8. Linux静默安装Oracle

    打算在云服务器上装oracle服务,以前DBA美眉都是在图形化界面下安装,这次抓瞎了.赶紧上网查查,静默安装可以解决问题.于是乎赶紧开始部署,过程如下.安装环境:操作系统:CentOS 7内存:11G ...

  9. Oracle 静默安装 oracle 12c

    [oracle@local12cdg app]$ id oracleuid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba)[or ...

随机推荐

  1. 数据库实例: STOREBOOK > 表空间 > 编辑 表空间: USERS

    ylbtech-Oracle:数据库实例: STOREBOOK  >  表空间  >  编辑 表空间: USERS 表空间  >  编辑 表空间: USERS 1. 一般信息返回顶部 ...

  2. wiggle-subsequence

    // 参考了:https://discuss.leetcode.com/topic/51893/two-solutions-one-is-dp-the-other-is-greedy-8-lines ...

  3. 第二十一章 springboot + 定时任务

    1.application.properties #cron job.everysecond.cron=0/1 * * * * * job.everytensecond.cron=0/10 * * * ...

  4. STL sort 函数实现详解 ZZ

    前几天阿里电话一面,被问到STL中sort函数的实现.以前没有仔细探究过,听人说是快速排序,于是回答说用快速排序实现的,但听电话另一端面试官的声音,感觉不对劲,知道自己回答错了.这几天特意看了一下,在 ...

  5. 如何利用Framework模型生成IQD文件

    很多Cognos的新手在接触Transform建模的时候对于iqd文件都有一种朦胧的感觉,当然也不必去死记硬别它的格式,下面我们就来说一下如何用Framework工具来生成iqd文件. 1:打开fra ...

  6. Android插件化(三)载入插件apk中的Resource资源

    Android载入插件apk中的Resource资源 简单介绍 怎样载入未安装apk中的资源文件呢?我们从android.content.res.AssetManager.java的源代码中发现,它有 ...

  7. linux下线程调试 ulimit core

    在linux 下写线程程序的同学预计都遇到过找bug找到崩溃的情况.多线程情况下bug的追踪实在是不easy. 如今我来介绍一个好用的方法 ulimit core. 先简介一下ulimit是个什么(你 ...

  8. Platinum UPnP

    http://www.plutinosoft.com/platinum http://blog.csdn.net/lancees/article/details/9178385 Note that P ...

  9. C#.Net中操作XML方法一

    我们知道XML是一种可标记性的语言,用来标记数据.定义数据类型,是一种执行用户对自己的标记语言进行定义的源语言.由于结构好.而且easy理解,就好比一棵树,层次关系分明,因此也经常把一些数据存储到XM ...

  10. 解决 /dev/mapper/* 100%

    1.查看大文件位置du -sh /* | sort -nr 2.分析,处理文件