Android热修复
傅晨明
毕业于杭州电子科技大学
展开
-
Tinker sample 报错 找不到android.support.annotation.Keep
参考:https://blog.csdn.net/qq_34177302/article/details/106574640在工程目录下gradle.properties添加#表示将依赖包也迁移到AndroidXandroid.enableJetifier=true这里如果取值为 false ,表示不迁移依赖包到AndroidX,但在使用依赖包中的内容时可能会出现问题。...原创 2020-07-02 15:20:22 · 467 阅读 · 0 评论 -
热修复AndFix详解
文章目录AndFix介绍原则修复过程AndFix集成AndFix初始化apatch文件生成补丁文件安装AndFix组件化AndFix源码讲解总结AndFix介绍https://github.com/alibaba/AndFixAndFix是一个在线修复漏洞的解决方案,而不是重新发布Android应用程序。它作为Android库分发。Andfix是“Android热修复”的缩写。AndFi...原创 2019-11-12 16:52:35 · 339 阅读 · 0 评论 -
Java和Android的ClassLoader原理分析
文章目录Java中的ClassLoaderAndroid中的ClassLoaderAndroid的ClassLoader的种类Android中ClassLoader的特点ClassLoader源码Android中的动态加载总结Java中的ClassLoader类加载器加载流程Android中的ClassLoaderAndroid的ClassLoader的种类BootClassLoa...原创 2019-11-12 13:15:14 · 256 阅读 · 0 评论 -
Android虚拟机
文章目录JVM结构解析编译流程类加载器加载流程JVM内存管理Java栈区本地方法栈方法区堆区垃圾收集算法引用的类型垃圾回收算法触发回收Dalvik与JVM的不同ART比Dalvik的优势总结JVM结构解析编译流程类加载器加载流程Loading:类的信息从文件中获取并且载入到JVM的内存里Verifying:检查读入的结构是否符合jvm规范的描述Preparing:分配一个结构...原创 2019-11-12 10:57:31 · 521 阅读 · 0 评论 -
class和dex文件解析
文章目录class文件什么是class文件如何生成一个class文件class文件格式详解dex文件什么是dex文件如何生成一个dex文件dex文件的作用dex文件结构class和dex对比总结class文件什么是class文件?如何生成一个class文件?class文件的作用?class文件格式详解什么是class文件能够被jvm识别,加载并执行的文件格式。如何生成一个clas...原创 2019-11-12 09:34:32 · 393 阅读 · 0 评论 -
Android ClassLoader源码分析
文章目录1 PathClassLoader2 DexClassLoader3 BaseDexClassLoader4 DexPathList5 ClassLoaderAndroid开发文档地址:https://developer.android.google.cn/reference/dalvik/system/package-summaryhttps://developer.android...原创 2019-09-29 10:34:36 · 355 阅读 · 3 评论 -
Tinker热修复手写实现1
手写实现从服务器下载dex文件如果修复包存在先删除拷贝到私有目录开始修复:创建自己的类加载器获取系统的PathClassLoader获取自己的dexElements获取系统的dexElements将系统的dexElements和自己的合并成新的dexElements重新赋值给系统的pathList先生成一个带bug的bug.apk,然后修复代码生成一个修复的fixed.apk...原创 2019-11-08 10:38:38 · 232 阅读 · 0 评论 -
Tinker热修复原理
热修复背景刚发布的版本出现了严重的Bug,这就需要去解决Bug、测试打包重新发布,这会耗费大量的人力和物力,代价比较大。已经更正了此前发布版本的Bug,如果下个版本是大版本,那么两个版本之间间隔时间会很长,这样要等到下个大版本发布再修复Bug,而之前版本的Bug会长期的影响用户。版本升级率不高,并且需要长时间来完成版本迭代,前版本的Bug就会一直影响不升级的用户。有一些小但是很重要的功能需...原创 2019-11-08 10:37:57 · 225 阅读 · 0 评论 -
Android热修复
文章目录1 热修复原理1.1 AndFix1.2 Robus1.3 Tinker1.4 Qzone2 ClassLoader2.1 双亲委托机制2.2 类查找流程3 热修复流程生成补丁包自动化生成补丁Android热修复原理分析什么是热修复ClassLoader介绍双亲委托机制findClass热修复总结1 热修复原理热补丁方案有很多,其中比较出名的有腾讯Tinker、阿里的AndFix、美...原创 2019-09-24 22:29:33 · 244 阅读 · 0 评论 -
Android热修复方案最简单实现
文章目录1 反射1.1 Class.forName()和ClassLoader.loadClass()的区别1.2 反射对性能影响1.3 反射中getMethods 与 getDeclaredMethods 的区别?反射工具类需要结合Android源码进行分析,源码分析请参照这篇文章:https://blog.csdn.net/hongxue8888/article/details/10166...原创 2019-09-30 15:45:36 · 400 阅读 · 0 评论