From 097c71ed58cd9c6d1318e3a2fe552adaaf875831 Mon Sep 17 00:00:00 2001 From: Santiago Castro Date: Mon, 17 Apr 2017 23:23:00 -0300 Subject: [PATCH] Fix broken Markdown headings --- README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index fa1f69d..7382764 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ 安卓App热补丁动态修复框架 -##介绍 +## 介绍 该项目是基于QQ空间终端开发团队的技术文章实现的,完成了文章中提到的基本功能。 @@ -20,8 +20,8 @@ **类似项目:** [Nuwa](https://github.com/jasonross/Nuwa) 这个项目补丁自动化那块做的很完整,感兴趣的可以去看 -##详细说明 -###补丁制作 +## 详细说明 +### 补丁制作 该技术的原理很简单,其实就是用ClassLoader加载机制,覆盖掉有问题的方法。所以我们的补丁其实就是有问题的类打成的一个包。 例子中的出现问题的类是 `dodola.hotfix.BugClass` @@ -64,7 +64,7 @@ public class BugClass { ![](img/patch2.png) -###实现javassist动态代码注入 +### 实现javassist动态代码注入 实现这一部分功能的原因主要是因为出现如下异常 @@ -150,9 +150,9 @@ android{ ![](img/patch3.png) -###补丁加载过程分析 +### 补丁加载过程分析 -##关于混淆 +## 关于混淆 文档里已经给出了解决方案。 >1. 在正式版本发布的时候,会生成一份缓存文件,里面记录了所有class文件的md5,还有一份mapping混淆文件。 @@ -164,6 +164,6 @@ android{ 这样打补丁混淆就能完全的自动化了。 -##ISSUE +## ISSUE 1. 开发测试过程中遇到一些问题,这种方法无法在已经加载好的类中实现动态替换,只能在类加载之前替换掉。就是说,补丁下载下来后,只能等待用户重启应用才能完成补丁效果。 2. 有同学反馈在一加手机上会出现` Class ref in pre-verified class resolved to unexpected`的错误,待找到手机后修复。。