UH——Unity热更新笔记
UH——Unity热更新笔记
热更新
游戏或者软件更新时,无需重新下载客户端进行安装
而是在应用程序启动的情况下在内部进行的资源或者代码更新
笔记代号UH——即Unity HotUpdate的缩写
本笔记包括以下系列
-
热更新基础 —— AssetBundle
-
热更新方案 —— Lua相关
- Lua方案基础 —— Lua
- Lua热更新方案 —— xLua
- Lua热更新方案 —— toLua
-
热更新基础 —— AB包的上传与下载
-
热更新方案 —— ILRuntime
常见的热更新解决方案
从早到晚包括以下的热更新方案
- Lua —— xLua或toLua都是内置Lua虚拟机,解释执行Lua代码
- ILRuntime—— 内置C#字节码解释器,解释执行C#代码
- Puerts —— 内置JavaScript/TypeScript解释器,解释执行TypeScript代码
- HybridCLR(Huatuo)—— 在IL2CPP中添加一个可装载C#字节码,解释执行C#字节码的功能(高性能)
热更新的好处
-
迅速修复Bug
避免重新下载安装包,游戏内部更新修复Bug
-
提升玩家留存率
避免玩家因为超大的安装包而流失
-
迅速换“内核”
下载后通过热更新换成另一个游戏(真有你的.jpg)
为何要学习那么多的热更新内容
理论上来说,我们是可以通过C#本身的机制来达到热更新目的的,但是由于IOS平台下限制了可执行权限的内存空间,
从而导致我们必须从JIT(即时编译)变为AOT(提前编译),也就导致C#失去了运行时解释的能力,从而无法完成热更新
为了能够在IOS平台下进行热更新,从而诞生出了很多热更新解决方案
而商业游戏开发中,为了更好的进行游戏推广和提升玩家体验,热更新又是必不可少的功能
所以我们必须具备开发热更新项目的能力,才能提升自己的就业竞争力
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 文KRIFE齐的博客!