JSPatch这个三方库相信很多IT人都知晓了,我因项目需要现在开始真正深入学习,有不对和出入的地方希望大家指正。
针对于iOS AppStore的审核机制的时限问题,应对的方法有不少:
申请加急审核(一年中加急的次数是有限的);
webview+HTML5生成页面(交互UI不如原生的,H5加载流量消耗等);
基于ReactNative写应用或者部分页面(很好的一种方法,但是无奈现在已有的有一定用户数的应用构成版本多数是用OC,这样使用ReactNative编写部分页面,就没有办法紧急处理非ReactNative页面的Bug问题);
基于JSPatch实现在线补丁式更新
JSPatch框架优势
JSPatch 是一个 iOS 动态更新框架可以使用 JavaScript 调用任何 Objective-C 原生接口,为项目动态添加模块,或替换项目原生代码动态修复 bug。
JSPatch框架实现原理
JSPatch基于OC上所有方法的调用/类的生成都通过Objective-C Runtime在运行时运行机制,通过js调用和改写OC方法,来实现在线修改应用上的出现bug。如果应用为了应对一个节日活动的紧急安排,可以通过更新或新增补丁实现。
JSPatch安装补丁,是指的执行补丁的JS文件的代码,这段代码会替换某个类或者方法的实现,当app运行到调用该方法或者该类生成对象时会走JS定义的逻辑,而不再是源代码中默认的逻辑。