安卓热修复技术

来源:互联网 发布:大型网络 编辑:程序博客网 时间:2024/05/21 04:39

一、功能简介:

以补丁的方式动态修复紧急Bug,不再需要重新发布App,不再需要用户重新下载,覆盖安装

二、热修复过程

1.将要修复的.dex文件和现在的app的.dex文件进行替换;2.重新加载.class文件;3.完成替换。

三、热修复所使用到的命令

1.先定位到项目的debug文件下:
F:\HotFix\app\build\intermediates\classes\debug

2.先把要修复的.class文件做成成jar,注意路径,一定要定位到该文件位置执行以下命令:
jar cvf path.jar 包名+类名
命令执行成功之后会在debug目录下生成一个.jar文件。

3.将第二步中生成的.jar文件生成.dex文件,只有通过dex工具打包而成的文件才能被Android虚拟机(dexopt)执行。
依然在该路径下执行以下命令:
dx –dex –output=path_dex.jar path.jar
命令执行成功之后会生成一个 path_dex.jar的文件。
至此:想要替换的资源文件已经有了,接下来就是把文件进行替换,。。待续。