看见 github 上微软又出了一个黑科技,CodePush.
看介绍好象是可以不用向应用商店提交版本,直接推送代码。
这是不是和许多 iOS 手机游戏一样,登录的时候下载更新包一样?
这样做的原理是啥
1
hyq 2016 年 1 月 12 日
用脚本写逻辑,发布后从网上下脚本。一般是用 lua 脚本
|
2
hyq 2016 年 1 月 12 日
这个是 javascript 做的 natvie 应用吧?
|
3
congeec 2016 年 1 月 12 日 via iPad
苹果的政策允许么?貌似是盲区
|
4
zhe13 OP @congeec 以前实习的时候,前辈写 iOS 就是用 Ludei 打包的,他就写了一个类似于端游每次登录的时候检查一下是否有更新包,有就下载。好像之前很火的刀塔传奇就是这么做的?国内和日本的好多 iOS 游戏都是这么做的,毕竟苹果商店每次提交版本都要提交全部代码,我觉得这样也很好=-=。能跟我讲讲整个软件包重新下载和下载补丁的优劣吗?@hyq
|
5
zhe13 OP @hyq 那我能不能这样理解,一个应用只包括底层逻辑和基础资源以及一个类似于“编译器”一样的处理器。高级逻辑就是脚本,然后每次打开程序都会由这个处理器接受推送,看看是否要下载新的脚本更改高级逻辑?
|
6
pheyer 2016 年 1 月 12 日
这个是配合 ReactNative 使用的吧
|
7
GeekTest 2016 年 1 月 12 日 via Android
不就是 12306 用的那套么
|
8
bullettrain1433 2016 年 1 月 12 日
居然是微软家搞得
|
9
easing 2016 年 1 月 12 日
我们的浏览器不就是代码热推送嘛, js 成吨成吨的下。概念就是这么个概念,无非就是换一个平台再来一次。
|
10
yujie 2016 年 1 月 12 日
现在脚本更新还是没啥问题,苹果在这块其实也是睁一只眼闭一只眼的,牵扯到很多利益问题,你要是重新传个包上去又得重新审核,不能及时解决问题,程序开发到一定程度,脚本的逻辑也是很多的,其中只有小改动的话做增量更新就好了,所有脚本全部打包上传没必要,这个微软出的不太清楚,我们之前做游戏就是用 Lua 脚本热更的,脚本语言是在运行时才进行编译链接的,所以就有了更新的可能性,做好版本号,发现有新的了,就下载下来,重新加载就好了~这期间程序是可以不用重启的
|
11
a591826944 2016 年 1 月 12 日
ReactNative +1
|
12
hqdmy 2016 年 1 月 12 日
hotpatch 啊
|
13
hqdmy 2016 年 1 月 12 日
ios wax
android Xposed |
14
agassi_yzh 2016 年 1 月 12 日
JSPatch 也能干
|
15
plantain 2016 年 1 月 12 日
代码是 typescript 写的,所以实际运行的应该是编译后的 javascript 。现在只支持 Cordova 和 React Native
|
16
aaaron7 2016 年 1 月 12 日
live long and prosper.....
最后一条 instruction 太有情怀了…… |
17
leonlu 2016 年 1 月 12 日
code push 用到的代码是 javascript 。苹果原来在开发者协议里指定只能在 web view 中执行远端代码。但是后来他们修改了协议,添加了一个 JavaScriptCore 。也就是说在苹果这儿,这么干是被认可的。
|
18
hyq 2016 年 1 月 12 日
|
24
jayzjj000 2016 年 1 月 12 日
这个应该都不算是黑科技了把,只是好好利用起来的公司好像不是特别多
单单 iOS 平台上,开源的 Wax+Lua , JSPatch+JS ,都是很好地方案,加上 iOS7 苹果推出了 JavascriptCore ,连平台都认可了还有啥不能干的 |
26
jayzjj000 2016 年 1 月 13 日
@zhe13 奇怪的用途就是线上改代码,你能想到改代码能产生的奇怪的功能他们都能搞
这几个框架里面 JSPatch 应该算是比较成熟了吧,中文文档也更全面,可以玩一玩 |
27
kevinzhwl 2016 年 1 月 13 日 via Android
很有趣的东西啊
|
28
publicAdmin 2016 年 1 月 13 日
JSPath 微信也在用.. 666666
|