Android热修复升级探索——资源更新之新思路
前言 Android资源的热修复,就是在app不重新安装的情况下,利用下发的补丁包直接更新本app中的资源。 我们在开发阿里云移动热修复(Sophix)的过程中,对Android资源的加载原理做了深入的探究,最终在资源修复方法上取得了突破性进展!新的资源修复方法不论是在使用便捷性、补丁包大小以及运行时效率方面,相比其他实现都有巨大的优势。 普遍的实现方式 目前市面上的很多资源热修复方案基本上都是参考了Instant Run的实现。 首先,我们简单来看一下Instant Run是怎么做到资源热修复的。 Instant Run资源热修复的核心代码就是这个monkeyPatchExistingResources方法: @com/android/tools/fd/runtime/MonkeyPatcher.java public static voi