Android静默安装

http://www.cnblogs.com/brucenan/archive/2012/10/04/2711817.html


最近做了一个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、最后就是执行
jar signapk.jar platform. x509.pem platform.pk8 签名的apk  目标文件.apk
 
由此生成的目标文件apk就可以正常安装在Android中,并可以静默安装任意指定的apk文件了。
 
 

文中所需的三个文件下载

signapk.jar

platform.x509.pem

platform.pk8


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值