Android热修复
来源:互联网 发布:melanmeka淘宝网 编辑:程序博客网 时间:2024/05/16 11:49
ClassLoader
禁止dex优化为class打上CLASS_PREVERIFIED标识
方式一
第一步:新建辅助类并单独生成一个dex,用于被其他类引用
第二步:使用javaasist在其他类的构造方法添加对辅助类的引用
第三步:在加载apk时,优先加载辅助类dex
缺点:需要在编译期间为所有的类的构造方法插入对辅助类的引用,存在性能问题方式二
代理dvmresolveclass方法,修改参数fromUnverifiedConstant为true,逃过校验。
目前还没与跑通。bug修复后生成差异包
将差异包添加到DexList前面
生成差分包
jar cvf 目标文件 源文件dx --dex --output apk文件 源jar包
关于http://blog.csdn.net/aerfahaidao/article/details/50217521这个博客中所说的生成补丁包的方法,亲测是不可行的。示例中替换一个Activity类是可以的,但是替换一个普通的工具类,还是会出现异常java.lang.IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation
0 0
- Android 热修复/热更新
- android热修复--手写热修复
- Android热修复
- Android 热修复总结
- Android 热修复原理
- Android 热修复
- Android热修复分析
- Android 热修复-AndFix
- Android热修复实现
- Android 热修复总结
- Android热修复---AndFix
- Android的热修复
- Android热修复
- 浅谈Android热修复
- Android的热修复
- Android 热修复总结
- android 热修复
- Android 热修复
- HashMap、HashTable和ConcurrentHashMap一知半解
- C语言中自带的头文件(.h)所包含的函数
- mysql主从设置
- [转]SVN中的Branches分支以及Tags标签详解与应用举例
- 教你写一个简单的网页(html网页开发入门)
- Android热修复
- linux命令login
- Java Thread Stop方法以及替换实现
- 深入分析C++引用
- jQuery事件绑定on()、bind()与delegate() 方法详解
- hdu 1088 Write a simple HTML Browser
- HDU 3605 网络流
- 在引入layout文件的时候出现resourse not found的解决问题
- 再谈闭包-词法作用域