JSPatch热修复

今天写了一个jspatch的小demo,每一步都做了截图,如果不了解JSPatch,大家可自行百度。JSPatch首页。

一、背景需求介绍

为什么我们需要一个热修复(hot-fix)技术?

工作中容易犯错、bug难以避免。
开发和测试人力有限。
苹果Appstore审核周期太长,一旦出现严重bug难以快速上线新版本。
作为生产力工具,用户有对稳定性和可靠性的需求。

二、JSPatch简介

JSPatch诞生于2015年5月,最初是腾讯广研高级iOS开发@bang的个人项目。
它能够使用JavaScript调用Objective-C的原生接口,从而动态植入代码来替换旧代码,以实现修复线上bug。
JSPatch在Github.com上开源后获得了3000多个star和500多fork,广受关注,目前已被应用在大量腾讯/阿里/百度的App中。

现在集成开始集成JSPatch

老规矩先导入框架

1.png

链接对应的库

2.png

keychain Sharing需要打开(真机就没事,模拟器跑的时候会报错,本人亲测)

3.png

故意源程序中tableview的代理点击方法中数组越界

4.png

去JSPatch官网注册账号,并且申请一个appkey

5.png

未上线,选填

6.png

复制对应的appkey,在appdelegate中注册一下

7.png

添加版本号,注意与你的app版本号要一样

8.png

补丁里填上需要修复的代码,这里js代码是由对应的oc代码转化的

9.png

运行结果已修复,点击cell的方法已被替换,控制台打印js代码执行的方法

11.png

实时监控成功的补丁数

12.png

demo地址对你有帮助的话就帮忙点颗星。

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • JSPatch 是腾讯微信团队牛人bang开源的一种通过JavaScript调用iOS原生代码来实现热修复或者动态...
    杭研融合通信iOS阅读 1,004评论 2赞 23
  • 前言 一说到热修复,可能很多人会觉得应该很复杂,很难用(我以前是这么觉得的。。。),然后最近入职的公司的项目,刚上...
    翻炒吧蛋滚饭阅读 2,792评论 24赞 42
  • 背景 是否有过这样的经历:新版本上线后发现有个严重的bug,可能会导致crash率激增,可能会使网络请求无法发出,...
    wu大维阅读 1,825评论 12赞 24
  • IOS App常常会遇到这种情况,线上发现一个严重bug,可能是某一个地方Crash,也可能是一个功能无法使用,这...
    0xSen阅读 1,424评论 3赞 35
  • 最近接触到热修复, 确实能解燃眉之急, 非常好用, 故分享给大家. 这里只讲 JSPatch, 这个是现在最热门最...
    Cean16阅读 1,605评论 2赞 4

友情链接更多精彩内容