Android增量更新与热修复是不同的技术概念。
热修复一般是用于当已经发布的app有Bug需要修复的时候,开发者修改代码并发布补丁,让应用能够在不需要重新安装的情况下实现更新,主流方案有Tinker(https://github.com/Tencent/tinker)、AndFix(https://github.com/alibaba/AndFix)等。
而增量更新的目的是为了减少更新app所需要下载的包体积大小,常见如手机端游戏,apk包体积为几百M,但有时更新只需下载十几M的安装包即可完成更新。
增量更新原理简单来讲,就是通过二进制算法找出新版本和旧版本安装包的差异,并将差异提取出来生成所谓的补丁包(差分包)。移动端检查更新时,只需要向服务器申请下载相对应的补丁包,然后将差分包与自身旧版本apk合并生成最新版本的apk。最终安装合并生成的apk即可完成版本更新。
功能的实现主要是借助第三方差分工具