美文网首页
JSPatch 热修复踩得坑

JSPatch 热修复踩得坑

作者: 羽亦 | 来源:发表于2017-01-10 11:17 被阅读29次

好久没更新自己的博客了,最近终于闲下来了, 总结下, 最近使用的 JSPatch,帮助大家节省些学习时间.

JSPatch 是一个开源项目(Github链接),只需要在项目里引入极小的引擎文件,就可以使用 JavaScript 调用任何 Objective-C 的原生接口,替换任意 Objective-C 原生方法。目前主要用于下发 JS 脚本替换原生 Objective-C 代码,实时修复线上 bug。

例如线上 APP 有一段代码出现 bug 导致 crash:

然后我们可以通过写一段JS 代码把上面 tableView代理中的方法全部覆盖,其实就是在下发了 js 代码的工程里,到了这个.m 里不在去执行上面的代码, 转而去执行你通过 JSPatch 平台下发的代码,从而使线上的工程正常运行.如下图:

当然对于如何接入 JSPatch 官网写的很详细, 我在这里就不去赘述. 

坑一:

 JSPatch一直以来语法特别恶心, 需要遵从他自己的语法才能与 iOS 兼容, 平台在更新了网页之后, 出了一个 OC 转 JSPatch 语法的转换器, 他的初衷是为了来帮助我们简化学习成本, 快速编写代码,但是很可悲的是, 如果你想把全部代码输进去,直接转成你要的 js 代码,是     绝    对    会出错的, 因为他们那个转化器的只能大致转化一句OC, 并不能100%转对...这就给那些过于相信转译器的同学带来了困扰. 所以我的建议是最好去学习官网的代码语言, 如果实在觉得记得麻烦,毕竟没有提示与联想嘛, 那就一句一句把 OC 语言沾到代码转译器里,然后再通过自己的需要改动, 对于 OC 官方的语言他们是没问题的,对于自定义的类或者 define 的属性会转移不好.

坑二:

在他们的官方语法中,没有关于 例如:   @property(nonatomic,strong)UILabel *titleLB; 属性的转译语法, 只有全局变量的语法, 但是在我们的工程中大量使用了属性, 一时间无所适从.

但是不要担心:

其实我们可以想象,在 OC 中属性是可以通过 self.xxx 出来, 同样的, 找到该类中的名称, 直接 self.xxx(); 就可以了..同时前面用一个变量来接收下.

我也是个 JSPatch 的初学者, 如果再遇到什么问题, 我会继续更新这个博客.其实使用 JSPatch 不是难, 只是没有方法提示, 我们不好写, 容易少个字母啥的,就出不来效果, 只要大家静心写,仔细点,写出来是没问题的~! O(∩_∩)O

相关文章

  • JSPatch 热修复踩得坑

    好久没更新自己的博客了,最近终于闲下来了, 总结下, 最近使用的 JSPatch,帮助大家节省些学习时间. JSP...

  • JSPatch热修复

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

  • JSPatch热修复

    首先,简单说一下,为什么要用JSPatch,做iOS开发的人都知道,一旦程序出现了紧急BUG,各种申请苹果的...

  • JSPatch热修复

    iOS如果线下出现bug, 这个好解决, 但如果线上出bug, 由于APP Store提交审核有时间限制, 修改完...

  • JsPatch学习(1)【使用篇】

    JsPatch的使用很多,简单介绍热修复功能。JsPatch【使用篇】 最简单的使用: 1、注册App 到JSPa...

  • iOS 动态化热修复方案

    iOS 动态化热修复方案 Warnning 前言 iOS热修复方案经过JSPatch事件后,也消停了很久。bang...

  • IOS热修复JSPatch

    概述 JSPatch是什么? JSPatch 是一个Github开源项目(https://github.com/b...

  • 热修复-JSPatch源码

    JSPatch 简单版本的JSPatch和注释:https://github.com/misaka14/JSPat...

  • JSPatch实现热修复

    对于苹果的app来说,虽然在提交审核上线前会经过严格的测试,但是还是要保证有重大bug的情况下能够及时进行热修复,...

  • JSPatch热修复iOSApp

    IOS产品开发中常常会遇到这种情况,线上发现一个严重bug,可能是一个crash,可能是一个功能无法使用,这时能做...

网友评论

      本文标题:JSPatch 热修复踩得坑

      本文链接:https://www.haomeiwen.com/subject/wvskbttx.html