Android静默安装
16lz
2021-01-25
最近做了一个Android项目,要求软件能够自动下载指定的APK文件并自动安装,无须用户操作,即静默安装。在查阅了GOOGLE之后,综合了各位方法之后,找到了一种相对简化的方法,不过此方法只在4.0的Android版本下测试过,其它版本各位可以照此方法尝试一下。 想要做到静默安装,其实就是要有权限执行pm install命令。准备工作其实就两步: 1、获取执行权限 2、执行命令 我们首先介绍第二步,如何执行pm install命令: 关键代码其实就一句:
Runtime.getRuntime().exec( "pm install xxx.apk");
网上也有人提到利用BufferReader读取控制台的输出Success来判断是否安装成功,但我始终没有抓到最后输出的那一句Success,只好用Package install的receiver来处理安装成功后的操作。 再回到如何获取权限的方法, 1、首先,我们要做的就是从Android的系统源码的 /build/target/product/security目录中,找到两个签名文件: platform.x509.pem和platform.pk8 2、在 /build/tools/signapk目录下找到signapk.jar文件的源码,编译成signapk.jar文件 3、然后在Android项目的manifest.xml文件中,加上INSTALL_PACKAGES的权限。 4、导出apk文件,这里选择签名文件导出。右键项目->"Android Tools"->"Export Signed application Package..." 5、最后就是执行 jarsignapk.jarplatform. x509.pemplatform.pk8 签名的apk 目标文件.apk 由此生成的目标文件apk就可以正常安装在Android中,并可以静默安装任意指定的apk文件了。 文中所需的三个文件下载:
signapk.jar
platform.x509.pem
platform.pk8
通过 为知笔记 发布
更多相关文章
- 一款常用的 Squid 日志分析工具
- GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
- RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
- Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
- 学习Android闹钟源代码(三)-AlarmClock类分析(part1)
- adb通过wifi连接方法
- Android抓包方法(一)之Fiddler代理
- Android(安卓)消息机制(Handler Looper Message )理解
- 关于android:sharedUserId="android.uid.system"这个系统级权限