如何应对 Appstore 刚推出的热更新限制?

0 条评论


  • 3

    龙骑士无面者 ,现在是菜鸟工程师,渴望成为专业模型玩家

    因为不能用热更新就导致用户流失?我觉得不至于吧。

    至于不用热更新而保持热更新的功能,其实有很多办法,比如每次都重新下载原来需要用“热更新”来更新的部分,只装载进内存而不写到Flash上,那样会多花费不少流量就是了。

    关于热更新,我了解到的比较少,大概是部分代码没有经过苹果认可?就我从百度百科上看到的内容来看,热更新是个没必要存在的功能,程序员和设计者完全有能力通过其他手段实现现在用热更新实现的东西,虽然要兼顾用户流量消耗问题可能会比较难。

    我提一个问题,“Appstore的热更新限制会导致无法提前在游戏包中放入大规模的运营活动”,大规模运营活动要上线意味着重新下载不是常识么……还是说我这种不玩手游,玩也只玩炉石这种非主流手游的人孤陋寡闻了?

    我倒是觉得影响更大的是部分经常在线改动又不发布新版本的手游,比如乖离性百万亚瑟王(我只玩过这个,说错了的话请指正,我会尽快修改),动不动上线就要下更新包。

    解决方法也简单,学习端游定时更新,或者一次性多赛点素材进去,怕别人拆包不是理由,我觉得炉石的做法就挺好的。

    答者在手游方面确实孤陋寡闻,还请诸位见谅。

    发布于 2017-06-14 17:38:33 1 条评论


  • 2

    Silencious ,Game developer

    Lusai 、 望星Torch 赞同

    不传谣不造谣。不要被人带节奏,也不要妄想搞个大新闻

    题图是一封邮件,不是官方公告,官方从来没有说禁止热更新。

    假设原邮件是真的,原邮件说的是“your app contains code designed explicitly with the ability to change your app's behavior or functionality after App Store Review approval”,看上去有点绕,所以翻译的人偷懒,直接翻译成“含有热更新代码”。

    实际苹果的说法是“含有‘在App Store审核后改变应用行为和功能’的代码”,不完全等价于热更新。

    再来看开发条款3.3.2和审核条款2.5.2。

    开发条款3.3.2说的是不准下载可执行代码,可以下载满足一定条件的解释型代码。有三个条件:不改变应用的主要功能,不调用其他代码或程序,不绕过iOS的沙盒。参见这里。

    审核条款2.5.2说的内容和上面类似,就是禁止下载可执行代码或者调用其他应用的代码和程序。参见这里。

    现在手游最常用的“热更新”,做的都是下载脚本和资源。资源不受影响,随便下载。脚本就是“解释型代码”,用来修Bug、开活动等。这些不算是“改变应用的主要功能”。当然如果有人作死做了什么奇怪的操作,或者用了下载dll的热更新方案,也许就会收到警告。

    至少大部分手游活的好好的,瞎操什么心。

    以上。


    相关内容还可以参考知乎。

    发布于 2017-06-16 11:13:54 2 条评论


  • 2

    Terrence Rao ,一线技术

    Voodoo 、 Terrence Rao 赞同

    禁止热更新, 对于那些更新比较频繁的游戏来讲, 影响还是比较大的.

    居我了解热更新在国内手游中, 还有不少游戏用到的.之前Cocos2d-js 及cocos2d-lua就是专门为热更新准备解决方案. 

    如果游戏经常更新, 每次玩家都要下载一个完整的最新版.(AppStore这点做得不大好, 当然苹果这些弄, 肯定有它的安全或其它各方面的考虑, 反观Steam, 在这更新这点上就做到了增量更新, 更新时玩家只要下载增量的部分). 这对于玩家的流量及时间的成本消耗都是不小的.

    至于解决方案,  我们之前试过, 用数据来功能的开关. 就是把能能想到功能做到包里面去. 由玩家数据, 或服务器下发的数据, 来决定功能是否打开. 部分解决吧.

    发布于 2017-06-15 19:10:28 0 条评论

  • 登录奶牛关账号即可参与讨论