香港6合总彩透码主论坛
 找回密码
 注册帐号

扫一扫,访问微社区

刘国柱 客户端热更新框架之UI热更框架设计(上)

35
回复
2842
查看
打印 上一主题 下一主题
[ 复制链接 ]

21

主题

107

帖子

910

积分

Rank: 9Rank: 9Rank: 9

UID
34511
好友
42
蛮牛币
1392
威望
0
注册时间
2014-7-15
在线时间
474 小时
最后登录
2019-8-13

专栏作家

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐?#29275;?a href="member.php?mod=register" title="注册帐号">注册帐号

x
本帖最后由 liu_guozhu 于 2019-4-25 09:49 编辑

什么是热更新,为什么需要热更新?
         热更新是目前各大手游等众多App常用的更新方式。简单来说就是在用户通过App Store下载App之后,打开App时遇到的即时更新。对于手游客户端来说,受到苹果审核的约束, 一次审核提交需要10~20天不等的等待时间。而这?#38382;?#38388;开发进度依然会推进很多,一旦手游上线,第一个版本在玩家疯狂行为下,出点问题是必然的,所以”在线更新” 就成了?#39029;?#20415;饭与必然。如果你要求必须整体重新下载完整下载包体,无法热更, 那么10~20多天后,游戏估计就没?#24230;?#20102;。


热更新要解决的问题?
         1: 更新频繁而IOS审核长,IOS无法用DLL反射机制去做代码更新。 如果无热更新机制,则客户端每次都需要玩家重新下载一次完整的安装包,用户体验不好。
         2: 解决发布包的容量问题,一切都可以增量下载。


热更新的基本原理是什么?
        首先要清楚Unity的打包原理,也就是AssetBundle的打包机制,他会把prefab打包成.asset格式作为传输的数据。通过校验文件的MD5?#36947;?#21028;?#40092;?#21542;需要更新,如果需要更新则下载差异文件。lua属于解释性文件所?#38405;?#36890;过www直接下载到本地,通过C#与lua交互,把逻辑写在lua里,从而实现代码热更新。

为什么需要带热更新的框架?
       在中大型商业项目?#26657;?#22522;于以上热更新的实际运营需求,国内外各大游戏公司纷纷基于国内已知技术与成熟插件,由技术总监或者主程来牵头研发自己公司的热更新框架。

笔者开发的热更新简单框架介绍:
         笔者基于自身技术储备参考部分行?#20498;?#21496;框架产品,设计了一套简单热更新客户端框架,现介绍如下,希望?#28304;?#36215;到抛砖引玉的作用,结交行业朋?#36873;?



热更新框架总体构成:
     客户端热更框架,核心主要设计为以下几个模块:
     A:    热更新UI框架模块。
     B:  lua框架(包含热补丁模块)。
             lua框架由?#25353;縧ua框架”与“C#?#25104;鋖ua”等技术构成。可以实现在lua脚本?#26657;?#23450;义unity的生命周期(eg:  Start()、Update() 等),方便lua的编写与功能扩展。
             业务逻辑方面,固定业务不需要频繁修改的功能,笔者还是坚持用C#完成。 有频繁更新需求的则用基于lua框架来编写。基于本套lua框架,其比纯lua编写效率高很多。
     C:  服务器端热更新流程模块。
     D:  基础支持插件与框架: xlua插件与AB(AssetBundle)框架。



热更新框架运行过程:
        整体热更框架的运行流程如下:
       1: 首?#28909;?#26356;新流程模块启动。 玩家可?#28304;?#23458;户端游戏中看到PC或移动端(?#21482;pad等)与服务器的更新过程。
       2: 热更新的UI框架启动。
       3: lua框架启动(与第2部分从宏观上可以并行运行)。
             3.1> 检查本项目中哪些C#脚本需要进行Bug动态更新。
             3.2> 初始化lua框架与C#建立生命周期?#25104;?#20851;系,进一步方便程序员在lua中使用unity提供的系统函数(例如:Start()、Update()等) 。
             3.3> lua框架启动完毕后,通知框架外部可以开始加载项目lua文件,?#20197;?#34892;期解释执行。
       4:  场景资源加载。




最后由于篇幅所限,笔者先写到这。下一篇本人会先就“热更新UI框架”这个模块,进行详细讲解。欢迎?#34892;?#36259;的小伙伴们留言。


参与人数 1鲜花 +5 收起 理由
Ra蹊 + 5 很给力!

查看全部评分总评分 : 鲜花 +5

回复

使用道具 举报

0

主题

3

帖子

7

积分

Rank: 1

UID
315736
好友
0
蛮牛币
7
威望
0
注册时间
2019-3-7
在线时间
5 小时
最后登录
2019-5-7
沙发
2019-4-25 09:56:44 只看该作者

回帖奖励 +5

学?#25226;?#20064;
回复

使用道具 举报

2初来乍到
146/150
排名
26985
昨日变化

0

主题

48

帖子

146

积分

Rank: 2Rank: 2

UID
127902
好友
0
蛮牛币
19
威望
0
注册时间
2015-11-4
在线时间
84 小时
最后登录
2019-7-31
板凳
2019-4-25 10:56:34 只看该作者
学?#25226;?#20064;
回复

使用道具 举报

2初来乍到
136/150
排名
17382
昨日变化

0

主题

45

帖子

136

积分

Rank: 2Rank: 2

UID
313936
好友
0
蛮牛币
79
威望
0
注册时间
2019-2-15
在线时间
53 小时
最后登录
2019-6-11
地板
2019-4-25 11:33:53 只看该作者
期待接下来?#21738;?#23481;
回复 支持 反对

使用道具 举报

9以坛为家
20412/50000
排名
463
昨日变化

236

主题

1万

帖子

2万

积分

Rank: 9Rank: 9Rank: 9

UID
78862
好友
19
蛮牛币
39637
威望
0
注册时间
2015-3-11
在线时间
3308 小时
最后登录
2019-8-23
QQ
5#
2019-4-25 11:39:03 只看该作者
刘?#40092;Γ?#21487;以考虑出热更新的书了
回复 支持 反对

使用道具 举报

6蛮牛粉丝
1200/1500
排名
2299
昨日变化

1

主题

146

帖子

1200

积分

Rank: 6Rank: 6Rank: 6

UID
234403
好友
0
蛮牛币
2856
威望
0
注册时间
2017-7-26
在线时间
437 小时
最后登录
2019-8-15
6#
2019-4-25 12:05:41 只看该作者
学?#25226;?#20064;
回复

使用道具 举报

排名
34887
昨日变化

0

主题

11

帖子

83

积分

Rank: 2Rank: 2

UID
201582
好友
0
蛮牛币
208
威望
0
注册时间
2017-1-13
在线时间
64 小时
最后登录
2019-7-18
7#
2019-4-25 13:39:41 只看该作者
学习一下
回复

使用道具 举报

5熟悉之中
519/1000
排名
7020
昨日变化

3

主题

124

帖子

519

积分

Rank: 5Rank: 5

UID
293049
好友
1
蛮牛币
2287
威望
0
注册时间
2018-8-9
在线时间
204 小时
最后登录
2019-8-24
8#
2019-4-25 15:51:47 只看该作者
热更新必须要学!
回复

使用道具 举报

0

主题

15

帖子

20

积分

Rank: 1

UID
319364
好友
0
蛮牛币
3
威望
0
注册时间
2019-4-11
在线时间
5 小时
最后登录
2019-4-27
9#
2019-4-25 16:31:25 只看该作者
不错,可以学?#25226;?#20064;
回复 支持 反对

使用道具 举报

排名
1896
昨日变化

49

主题

766

帖子

2094

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
214924
好友
5
蛮牛币
21758
威望
0
注册时间
2017-3-28
在线时间
563 小时
最后登录
2019-8-22
10#
2019-4-25 16:49:49 只看该作者
必须支持,一定好好学习
回复 支持 反对

使用道具 举报

5熟悉之中
621/1000
排名
4696
昨日变化

2

主题

89

帖子

621

积分

Rank: 5Rank: 5

UID
91826
好友
0
蛮牛币
800
威望
0
注册时间
2015-4-29
在线时间
218 小时
最后登录
2019-7-1
11#
2019-4-25 17:44:19 只看该作者
必须支持,一定好好学习
回复 支持 反对

使用道具 举报

排名
1806
昨日变化

0

主题

433

帖子

1530

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
148517
好友
1
蛮牛币
18
威望
0
注册时间
2016-5-13
在线时间
361 小时
最后登录
2019-8-15
12#
2019-4-26 00:55:34 只看该作者
看起来非常不错哦
回复 支持 反对

使用道具 举报

排名
4092
昨日变化

0

主题

1412

帖子

2139

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
254705
好友
1
蛮牛币
1939
威望
0
注册时间
2017-11-16
在线时间
365 小时
最后登录
2019-8-25
13#
2019-4-26 08:06:03 只看该作者
6666666666666666666666666666666
回复 支持 反对

使用道具 举报

排名
10818
昨日变化

3

主题

27

帖子

268

积分

Rank: 3Rank: 3Rank: 3

UID
237668
好友
0
蛮牛币
9315
威望
0
注册时间
2017-8-15
在线时间
142 小时
最后登录
2019-8-23
14#
2019-4-26 08:56:46 只看该作者
学?#25226;?#20064;
回复

使用道具 举报

排名
13985
昨日变化

0

主题

31

帖子

260

积分

Rank: 3Rank: 3Rank: 3

UID
222120
好友
1
蛮牛币
492
威望
0
注册时间
2017-5-14
在线时间
169 小时
最后登录
2019-8-24
15#
2019-4-26 09:22:24 只看该作者
11111111111111111111111111111111
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

香港6合总彩透码主论坛
正规篮球投注 竞彩足球技巧方法 黑龙江时时三星走势 彩票计划软件哪个准 北京pk赛车10官网 快三提前开奖漏洞 安徽时时平台下载 七星彩百万位杀号预测 飞艇全天大小计划免费 双色球投注单详解