鉴于同志们总是出现很多的小Bug小错误,开始寻找能够热更新的方案,果然深受其害的不止我一个人;
腾讯出了JSPatch来应对iOS出现BUG就要很久才能修复的问题;
具体讲解请看:http://www.jspatch.com/Docs/start,腾讯的官方页面,对于小的App来说都是免费的,付费的价格也比较低,推荐使用;
我这边就贴一个,自己实际应用的例子;
以下是我们原来的OC代码
- (void)needRead
{
NSString *strNeedRead = @"\t原来的文本";
AllMessageView * allMessageView = [[AllMessageView alloc] initWithFrame:[UIScreen mainScreen].bounds withType:@"needRead"];
[allMessageView addDetailMessage:strNeedRead];
[self.navigationController.view.superview addSubview:allMessageView];
}
还好我们机智,在发现有JSPatch的时候就加上了,于是我们直接写了一个热更新脚本,JS演变为如下的代码:
defineClass("ProgramMessageViewController", {
needRead: function() {
var strNeedRead = ""
if(self.programId() == 200)
{
strNeedRead = "\t原来的文本"
}else{
strNeedRead = "根据新的需求产生的文本"
}
var allMessageView = require('AllMessageView').alloc().initWithFrame_withType(require('UIScreen').mainScreen().bounds(), "needRead")
allMessageView.addDetailMessage(strNeedRead)
self.navigationController().view().superview().addSubview(allMessageView)
}
})这样直接就更新了,很好的解决了需求,所以同志们,不管是否用到,赶紧把JSPatch先给加上,以防万一,万一真的太多了。
更有好心人出了,OC转JS的工具,请移步(可能需要翻墙):http://bang590.github.io/JSPatchConvertor/
本文介绍了一种利用JSPatch实现iOS应用热更新的方法,通过一个具体案例展示了如何快速响应需求变更,避免重新发布应用所带来的不便。同时推荐了一个免费且性价比高的热更新解决方案。

被折叠的 条评论
为什么被折叠?



