JSPatch 使用】的更多相关文章

本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/579efa7083355a9a57a1ac5b Dev Club 是一个交流移动开发技术,结交朋友,扩展人脉的社群,成员都是经过审核的移动开发工程师.每周都会举行嘉宾分享,话题讨论等活动. 本期,我们邀请了腾讯WXG iOS开发工程师——bang 陈振焯,为大家分享<JSPatch成长之路>. 如何加入 Dev Club? 移动端开发经验 >= 2 年,微信扫描下方群管…
JSPatch的作用是什么呢? 简单来说:(后面有具体的操作步骤以及在操作过程中会出现的错误) 1.iOS应用程序上架到AppStore需要等待苹果公司的审核,一般审核时间需要1到2周.虽然程序在上架前会经过测试人员的测试,但有时候还是不免会发生新版本上线后出现严重的bug,导致用户刚升级到新版本就出现crash,严重影响用户体验. 2.这时能做的只是赶紧修复bug然后提交等待漫长的AppStore审核,再盼望用户快点升级,才能完成此次bug的修复,这样及容易导致用户流失,这对企业来说影响非常严…
1.JSPatch 准备 地址:https://github.com/bang590/JSPatch 框架:libz.1.tbd , JavaScriptCore.framework 2.cocospod(可得到的三个文件) JPEngine.h,JPEngine.m,JSPatch.js 3.Demo(重要的三个文件夹) Extensions,JSPatch,Loader ********测试******** 1.在本地生成一个main.js文件 require('SecondViewCont…
如果用一句话来描述JSPatch,就是利用系统自带的JavaScriptCore.framework配合RunTime机制,进行实时的代码下载与运行.. 而且使用也很简单,启动,加载JS,运行... [JPEngine startEngine]; NSString *sourcePath = [[NSBundle mainBundle] pathForResource:@"demo" ofType:@"js"]; NSString *script = [NSStri…
今天研究了一下JSPatch,发现好神奇好奇妙,感觉这几天我都会乐此不彼的去研究这个高大上的东西. 出处来着:https://github.com/bang590/JSPatch 简单介绍一下这个 defineClass 方法,文档中是这样写的(bang590/JSPatch ) defineClass(classDeclaration, instanceMethods, classMethods) @param classDeclaration: 字符串,类名/父类名和Protocol @pa…
ios 由于苹果的审核政策,一旦上线后发现bug是件让人崩溃的事情 不过可以利用oc的runtime机制可以家用JSPatch动态的为工程打热补丁 下载地址:https://github.com/agelessman/JSPatch.git 如果不用cocoapods导入的话,不需要修改,如果拖到工程的,需要改头文件, 例如: #import “abc.h” 在appdelegate中添加类似下边的方法,写一个本地的属性记录补丁的版本号,如果文件存在,再调用 - (void)hotfix { /…
hotfix的作用众所周知,Android和iOS都有各自的技术,但是相比Android的当天发布来说(如果你们的项目不需要灰度),iOS热更新的意义更加重大.因为iOS审核周期长不说,而且运气不好会遇到各种被拒,即使申请快速审核,也必须满足二者之一:能够准确的告诉苹果复现crash的步骤,或者在特殊节日附近. 可能你费劲周折的提心吊胆和那么多天其实也就是在某个类中加三行代码. 1.简单介绍 在没有JSPatch之前,可能有人会使用过JSCocoa.但是有着一系列复杂问题,比如源码已经多年没有维…
链接: JSPatch github项目主页 JSPatch技术文档 JSPatch基础用法总结 JSPatch – 动态更新iOS APP JSPatch使用小记 end…
关于HotfixPatch 在IOS开发领域,由于Apple严格的审核标准和低效率,IOS应用的发版速度极慢,稍微大型的app发版基本上都在一个月以上,所以代码热更新(HotfixPatch)对于IOS应用来说就显得尤其重要. 现在业内基本上都在使用WaxPatch方案,由于Wax框架已经停止维护四五年了,所以waxPatch在使用过程中还是存在不少坑(比如参数转化过程中的问题,如果继承类没有实例化修改继承类的方法无效, wax_gc中对oc中instance的持有延迟释放...).另外苹果对于…
最近正式在线上项目中集成了jspatch进行热修复,这里做一个简单的总结. 工具篇: 首先,用xcode来编辑js非常困难,基本上没有缩进,完全需要手写:经过研究发现使用 Sublime text3 结合 jsformat 插件,可以很好的编辑js脚本. 一般来说,我们可以使用JSConvertor对js进行转换,然后在sublime text中进行编辑和格式化,通过xcode run代码来查看效果. 一次热修复实践中遇到的转换问题: 1. js是动态类型的语言,因此所有的类型转换代码全部需要删…