美文网首页
利用JSPatch平台实现线上bug修复

利用JSPatch平台实现线上bug修复

作者: 米橙 | 来源:发表于2017-01-03 13:20 被阅读0次

1.首页打开http://jspatch.com,注册一个账户然后登陆。

屏幕快照 2017-01-03 下午12.14.29.png

2.选择我的App,然后新增App,


屏幕快照 2017-01-03 下午12.13.42.png

3.添加App名称和AppID


屏幕快照 2017-01-03 下午12.18.49.png

得到左边的appKey,

4.点击SDK下载,把下载好的SDK拖入项目中,添加依赖框架:TARGETS -> Build Phases -> Link Binary With Libraries -> + 添加 libz.dylib 和 JavaScriptCore.framework

5.在 AppDelegate.m 里载入文件,并调用 +startWithAppKey: 方法,参数为第一步获得的 AppKey。接着调用 +sync 方法检查更新


屏幕快照 2017-01-03 下午12.23.14.png

由于项目是由Swift语言编写的,这里是Swift的接入方法,判断用户是否登陆,根据用户ID来开启开发预览,图中白色部分为appKey。

6.到JSPatch平台我的App中选择你需要修改的App,添加APP版本,


屏幕快照 2017-01-03 下午12.31.02.png

7.选择需要修改的版本,上传js文件,填写补丁描述


屏幕快照 2017-01-03 下午12.33.24.png

我这里选择是开发预览选项,补丁只下发到项目里开启了开发预览模式的用户。测试没有问题后变成全量下发。

至此利用JSPatch平台实现线上bug修复已基本完成,更详细的接入文档在这里http://jspatch.com/Docs/SDK

关于main.js的编写以及JSPatch的更多用法可以参考https://github.com/bang590/JSPatch/wiki

由于我的项目是用Swift编写的,中间遇到过不少的问题,下面贴出部分main.js的代码


屏幕快照 2017-01-03 下午12.47.21.png

1.Swift项目里面,控制器名称前面一定要加前缀。
2.只有继承自 NSObject 的 Swift 类,其继承自父类的方法和属性可以在 JS 调用,其他自定义方法和属性同样需要加 dynamic 关键字才行。
3.方法的参数/属性类型为 Swift 特有(如 Character / Tuple),则此方法和属性无法通过 JS 调用。
4.方法名或者属性名带有“”的,一定要用“_”双下划线,比如:JPObject.__privateMethod()。
5.js里面获取数组里面的值,最好分步实现,比如:self.selectDataSource().toJS()[indexPath.row()]这样可能会获取不到数组里面的值。

以上是我用JSPatch所遇到的一些问题,希望看客也能帮忙多补充些解决问题的方法,第一次写简书就写这样了。

相关文章

  • 利用JSPatch平台实现线上bug修复

    1.首页打开http://jspatch.com,注册一个账户然后登陆。 2.选择我的App,然后新增App, 3...

  • JSPatch进阶

    JSPatch 开源以来大部分被用于 hotfix,替换原生方法修复线上bug,但实际上 JSPatch 一直拥有...

  • JSPatch线上bug实时修复

    JSPatch是什么 JSPatch是一个开源项目,只需要在项目里引入极小的引擎文件,就可以使用 JavaScri...

  • 使用JSPatch实现实时修复线上bug

    JSPatch简介 JSPatch 是一个开源项目(Github链接),只需要在项目里引入极小的引擎文件,就可以使...

  • iOS之JSPatch修改指定控件的文本

    前言:最近用JSPatch修复了线上App一个UILabel文本写错的Bug。其中过程记录下来,希望对大家有帮助。...

  • 初探JSPatch

    前言 iOS平台的有很多热修复框架,原理都是差不多,都是利用 Runtime 进行属性、方法修改。JSPatch ...

  • iOS JSPatch -> 热更新

    介绍: JSPatch可以用于热更新,修复严重的线上bug。用作紧急的小需求,是从服务器上拉js脚本。理论上是可以...

  • iOS 通过 JSPatch 实时修复线上 bug!

    JSPatch 是一个开源项目(Github链接),只需要在项目里引入极小的引擎文件,就可以使用 JavaScri...

  • JSPatch中遇到的问题-js断点调试

    关于: JSPatch -- 热修复BUG神器, 大公司会用它来做模块更新, 而且配合React native会更...

  • JSPatch你想知道的都在这里

    我们首先说说JSPatch是什么,它是iOS热修复平台,我们项目中如果导入JSPatch,即使你的项目已经上线,不...

网友评论

      本文标题:利用JSPatch平台实现线上bug修复

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