前言
热更新的内容可以是美术资源,可以是代码,但相对来说,美术资源的更新不会受到约束,代码实际上是重灾区。本文介绍的主要是客户端代码热更新。
热更新对于开发者来说是一件麻烦事,特别对于看重效率、便捷性和结构的程序员来说,热更新就是运营人员的不懂技术的表现。然而,对于上线才是刚刚开始的网络游戏,特别是手游来说。热更新是极为重要的基础功能。
客户端为什么要热更新?
适应上线需求
对于手游客户端来说,受到苹果审核的约束,一次审核提交需要10~20天不等的等待时间,而这段时间,开发进度依然会推进很多。
一旦手游上线,第一个版本在玩家疯狂行为下,出点问题是必然的,所以”上线更”就成了家常便饭. 如果你要说,必须大包,无法热更,那么10~20 多天后,游戏估计就没啥人了,更别说渠道,发行投入巨大资金进行推广之下让玩家迎来的一堆bug的版本以及所谓程序员的傲慢和清高。
热调试,热开发,热发布
除了线上问题之外,由于Unity3D为了适应64位应用需求,将C#编译出的IL代码利用il2cpp第三方库编译成为c++。效率提升了倒是好,但工程编译和发布时间变得相当感人,