iOS 热更新技术探索
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 热更新技术探索相关的知识,希望对你有一定的参考价值。
最近在找工作,所以有时间研究一些BAT用到的一些框架和技术,今天要写的是热更新。
1.什么是热更新。
受限于ios平台需要先审核在上线,一旦线上发现bug,想要修复还需要等到下次版本提交,这无形中会带给我们一些困扰,尤其是一些BAT量APP,所以热更新技术应运而生。
2.热更新解决方案。
我目前知道的有两种
第一种:微信使用的JSPatch
JSPatch看名字就知道它是通过JS来实现的,大致原理就是通过下发JS脚本,通过消息转发调一些OC原生的方法,这个框架主要是用到一些JS高阶和运行时结合消息转发来实现,支持cocopods,使用的话需要你有JS功底。
第二种:支付宝使用的Ali-Wax
Ali-Wax是基于Wax,fork的一份源码。通过lua语言来实现,只会64位和多线程安全。
参考资料:
https://github.com/bang590/JSPatch/wiki
https://github.com/alibaba/wax/wiki
以上是关于iOS 热更新技术探索的主要内容,如果未能解决你的问题,请参考以下文章
Android热修复:底层替换类加载原理总结 及 DexClassLoader类加载机制源码探索
Android热修复:底层替换类加载原理总结 及 DexClassLoader类加载机制源码探索