Android 开发

Andorid通过反射实现静默安装

2016-08-23  本文已影响0人  乱逃

本文讲解通过反射Android pm instal来调用隐藏api, 来静默安装,至于原理什么的,就不多说了,网络上一搜一大把,下面是亲测可行的;
先上Demo,其中的libs文件夹下的class.jar是主角。
本文有一个大前提,那就是你的apk是放在系统/system/priv-app目录下,也就是说,rom是你们自己搞的,手动滑稽=。=
如果你是用AndroidStudio版本的,也是链接中的DemoSilenceInstall
步骤如下:

名字,不要眼瞎,后面是你起的jar包的名字,这个名字随意取,两者对应就行.

以上的操作的目的有两个:
  1.就是将class.jar以eclipse中那种userlib的形式导入,
  2.调整jar包的优先级

剩下的,就是将应用打包签名,放到/system/priv-app这个目录下 就ok了,

下面说下Eclipse版本的操作,代码都是一样的,jar包也是一样,就两点,jar包通过userlibrary的形式导入,直接放图吧,多图慎入:


![Uploading 4_049957.png . . .] 3.png 4.png

![

![Uploading 6_086779.png . . .]
](https://img.haomeiwen.com/i1453857/e6cde6675deb959b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

6.png 7.png 8.png 9.png ![Uploading 10_162291.png . . .] 11.png

至此,,搞定了,╮(╯▽╰)╭,继续搬砖。如果你要问这个class怎么来的,你找做rom的大神们给你编译一份源码就行,反正我不会。OTZ.... 然而这个地方在我写完文章后又出现了一个实战问题,那就是用multydex分包处理后,还是会出现 Too many classes in --main-dex-list, main dex capacity exceeded,,目前一个最简单暴力的方法就是把minsdkversion 调成21+,我在想想办法,,,,解决了更新文章。

(⊙o⊙)…,暂时没解决,不过上了一个新版本,用aidl实现的,也是可以用这里的...东西都差不多,jar包换了个精简的,然后改用aidl实现的注意,aidl的包名不要动,,,然后配置下gradle里面的aidl

上一篇 下一篇

猜你喜欢

热点阅读