iOS 热更新解读(一)APatch & JavaScriptCore
iOS 动态更新的几种方案
- WebView 加载 HTML5 动态更新。
- React Native/weex js 动态更新。
- lua 脚本文件控制动态更新(代表框架 WaxPatch )。
- js 脚本文件控制动态更新(代表框架 JSPatch)。
- framework 实现功能模块动态更新。
其中 WaxPatch 和 JSPatch 是使用较广泛的两种热修复方案。而苹果 review guideline 提到只允通过JavaScriptCore.framework或WebKit执行脚本,因此 JSPatch 是真正被 Apple 官方支持的。此外鉴于JavaScript比lua语言更亲民,使用系统内置的 JavaScriptCore.framework而无需内嵌lua脚本引擎来解释运行lua代码,JSPatch 便成为目前 iOS 热修复使