• 文体 —频道 春城壹网 七彩云南 一网天下 2019-07-18
  • 【理上网来喜迎十九大】苏格:习近平总书记外交思想领航中国特色大国外交 2019-07-18
  • 8种家居环境很败“性” 2019-06-28
  • 2018年全军院校招生计划下达:计划招收学员3.05万名 2019-06-15
  • 晋城市举办干部素质提升工程第十八期专题讲座 2019-06-15
  • 抖音广告出现对英烈邱少云不敬内容 今日头条致歉 2019-06-13
  • 超半数巴西民众对世界杯不感兴趣--旅游频道 2019-06-12
  • 外交部举行中外媒体吹风会:王毅介绍上合组织青岛峰会情况 2019-06-12
  • 2018网络中国节·端午 2019-06-04
  • 韩媒:韩美商定暂停原定8月“乙支自由卫士”联演 2019-06-03
  • 重庆市公安局交通管理局互联网交通安全服务管理平台 2019-06-03
  • 俄侦察船穿越英吉利海峡 英国急派军舰战机监视 2019-05-28
  • 网购陷阱多 女子花3000元买5套化妆品只有2套是真的 2019-05-28
  • 环保约谈濂溪区主要负责同志 谢一平要求立行立改真抓真改 2019-05-25
  • 官宣!广东签约北京3冠功勋 大莫助拳阿联未来可期 2019-05-25
  • 江苏十一选五走势图表: 刘国柱 客户端热更新框架之UI热更框架设计(下)

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

    福建36选7和值走势图 www.00-na.com 20

    主题

    103

    帖子

    893

    积分

    Rank: 9Rank: 9Rank: 9

    UID
    34511
    好友
    41
    蛮牛币
    1375
    威望
    0
    注册时间
    2014-7-15
    在线时间
    462 小时
    最后登录
    2019-7-18

    专栏作家

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

    您需要 登录 才可以下载或查看,没有帐号?注册帐号

    x
    本帖最后由 liu_guozhu 于 2019-5-9 10:56 编辑

           上一篇笔者介绍了关于什么是热更新,为什么需要热更新的技术文章。本篇就专门针对UI框架的热更新功能实现部分展开讨论,讨论的重点是热更新如何与UI框架进行结合?
           现在笔者把设计“UI热更新框架”的整体设计与构建过程表述如下,最后附带源码工程的下载链接,供广大学员参考研究。如果大家有什么不明白的地方,欢迎大家在评论区进行讨论。
       
    1:首先基于笔者以前设计的SUIFW 框架,做进一步功能完善。
           完善UI框架对于复杂窗体的直接转向功能。为了小伙伴们能够更好的理解本技术,文章末尾特提供了下载链接供大家参考。



    2:经过重构完善后UI框架与AB框架(即:AssetBundle 框架,本框架文章末尾提供源码下载链接) 的初步资源、脚本整合处理。

        2.1> 建立一个全新的项目名称例如:UIPlusABFramework。
        2.2> 项目中增加存放需要打包资源的目录。 例如“AB_Resurces”目录。
        2.3> Resources目录原来的资源文件,除了配置文件外,全部拷贝到AB_Resources 目录下。使用AB框架,对资源进行打包处理,加载到StreamingAssets 目录下。


    3:原始UI框架核心类(UIMangager.cs)的改动。

        3.1> 把原UI核心类底层加载机制 Resources.Load() 的单机职能,改为以AB框架为核心的AB包的调用加载机制。
    具体说明:
                  ResourcesMgr.GetInstance().LoadAsset(strUIFormPaths, false);


    替换为   AssetBundleMgr.GetInstance().LoadAssetBundlePack(xx,xx,xx,LoadAllABComplete){}
                  private void LoadAllABComplete(string abName){}


       3.2> 原本”Resources” 类需要的UI窗体路径的(基于Json配置文件的)参数, 改为了以AB框架中“场景名称、包名称、资源名称”为参数核心的机制。当然本部分也需要对核心配置文件"UIFormsConfigInfo.json" 做大的改动。(具体在第4节详述)。


       3.3> 由于UIMangager.cs中,对于直接调用AB框架核心API,有很多不方便的地方。即需要写很多代码,且从UI与AB两大框架解耦的思想出发,特设计一个中间过渡脚本(例如: ABLoadAssetHelper.cs),利于两大框架之间的低耦合处理。本设计过程参考经典设计模式中的“代理模式”、“桥接模式” 等思想。


       3.4> 以上两大框架的结合与重构难点在于: 原始UI框架本质是“串行运行”,而AB框架资源调用是“并行运行”。 所以协调资源加载的先后顺序是“热更新UI框架”的重点与难点。


    4: 原始UI框架核心类(UIMangager.cs)中对于Json配置文件的改动。

           原始配置文件"UIFormsConfigInfo.json" 以键值对的方式,存储了UI窗体预设名称与UI窗体预设在Resources目录下的相对路径的映射关系。但是在改造后的配置文件,所有的AB包都是默认加载到StreamingAssets 目录下。
           所以其配置文件中的“值”,就改为AB包的参数:“场景名称、包名称、资源名称”。因为有三个参数,可以定义在一行,中间加一个分隔符即可。在程序中可以做分割处理即可。详细请读者查看更新后定义的"UIFormsConfigInfo.json"配置文件。


    5: 以上步骤开发完毕后,需要使用UI框架自带的演示示例项目,做加载验证测试。
    如果可以正确无误的运行原UI框架所有的功能设计,则我们的“热更新UI框架”,就算是初步重构完毕了。
    当然这只是笔者设计的“热更新框架设计之客户端热更框架”的一小部分,笔者会在后面的博客中对国内部分游戏公司所推崇的“纯lua热更新”框架进行介绍与设计讲解,敬请期待。


    附录资料下载:

    1: UI框架(SUIFW框架Ver1.1) 下载链接:
               链接:https://pan.baidu.com/s/1HU22Gr6GpWmT77vp4DcFZg
               提取码:r4r7

    3: AssetBundle 框架(ABFW)源码工程下载链接:
               链接:https://pan.baidu.com/s/1VOoL9K3dUTpqxkwCcrQWYw
               提取码:hla8

    4:本文讲解通过UI与AB框架整合,最终形成的“热更新UI框架”( UIPlusABFramework)源码下载链接:
           链接:https://pan.baidu.com/s/1C6e2ROHsqSaBEuCtRrzqpA
           提取码:dfq6



    参与人数 1鲜花 +4 收起 理由
    泗阳该歇大锅 + 4

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

    5熟悉之中
    826/1000
    排名
    2816
    昨日变化

    0

    主题

    58

    帖子

    826

    积分

    Rank: 5Rank: 5

    UID
    145522
    好友
    0
    蛮牛币
    850
    威望
    0
    注册时间
    2016-4-14
    在线时间
    248 小时
    最后登录
    2019-7-18
    沙发
    2019-5-9 13:13:00 只看该作者

    回帖奖励 +1

    刘老师棒棒哒
    3偶尔光临
    170/300
    排名
    24128
    昨日变化

    1

    主题

    85

    帖子

    170

    积分

    Rank: 3Rank: 3Rank: 3

    UID
    162579
    好友
    0
    蛮牛币
    23
    威望
    0
    注册时间
    2016-8-16
    在线时间
    66 小时
    最后登录
    2019-6-8
    板凳
    2019-5-9 14:08:20 只看该作者
    学习了,真是难得,免费开讲,资源还免费下
    5熟悉之中
    505/1000
    排名
    6127
    昨日变化
    1

    8

    主题

    105

    帖子

    505

    积分

    Rank: 5Rank: 5

    UID
    147112
    好友
    0
    蛮牛币
    588
    威望
    0
    注册时间
    2016-4-29
    在线时间
    168 小时
    最后登录
    2019-7-16
    地板
    2019-5-9 15:44:09 只看该作者
    感谢刘老师,免费案例,免费资源
    4四处流浪
    399/500
    排名
    7086
    昨日变化

    0

    主题

    109

    帖子

    399

    积分

    Rank: 4

    UID
    217314
    好友
    0
    蛮牛币
    784
    威望
    0
    注册时间
    2017-4-12
    在线时间
    106 小时
    最后登录
    2019-7-9
    5#
    2019-5-9 18:11:34 只看该作者
    刘老师棒棒哒
    4四处流浪
    358/500
    排名
    16594
    昨日变化

    1

    主题

    131

    帖子

    358

    积分

    Rank: 4

    UID
    281418
    好友
    0
    蛮牛币
    411
    威望
    0
    注册时间
    2018-5-16
    在线时间
    184 小时
    最后登录
    2019-7-17
    6#
    2019-5-11 09:51:04 只看该作者
    谢谢                     

    0

    主题

    2

    帖子

    2

    积分

    Rank: 1

    UID
    321907
    好友
    0
    蛮牛币
    0
    威望
    0
    注册时间
    2019-5-12
    在线时间
    0 小时
    最后登录
    2019-5-12
    7#
    2019-5-12 21:52:56 只看该作者
    多谢楼主分享
    5熟悉之中
    909/1000
    排名
    3560
    昨日变化

    9

    主题

    191

    帖子

    909

    积分

    Rank: 5Rank: 5

    UID
    162410
    好友
    0
    蛮牛币
    2832
    威望
    0
    注册时间
    2016-8-15
    在线时间
    289 小时
    最后登录
    2019-7-18
    8#
    2019-5-14 14:51:51 只看该作者
    谢谢 刘老师
    5熟悉之中
    955/1000
    排名
    10817
    昨日变化

    3

    主题

    699

    帖子

    955

    积分

    Rank: 5Rank: 5

    UID
    310426
    好友
    0
    蛮牛币
    1181
    威望
    0
    注册时间
    2019-1-2
    在线时间
    157 小时
    最后登录
    2019-7-18
    9#
    2019-5-20 08:49:50 只看该作者
    太赞了
    7日久生情
    1689/5000
    排名
    831
    昨日变化

    2

    主题

    146

    帖子

    1689

    积分

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

    UID
    5714
    好友
    0
    蛮牛币
    3193
    威望
    0
    注册时间
    2013-10-15
    在线时间
    359 小时
    最后登录
    2019-7-18
    10#
    2019-5-23 08:55:22 只看该作者
    感谢分享

    0

    主题

    7

    帖子

    7

    积分

    Rank: 1

    UID
    323611
    好友
    0
    蛮牛币
    3
    威望
    0
    注册时间
    2019-5-31
    在线时间
    0 小时
    最后登录
    2019-5-31
    11#
    2019-5-31 17:00:43 只看该作者
    xuexue1111111111111111
    您需要登录后才可以回帖 登录 | 注册帐号

    本版积分规则

  • 文体 —频道 春城壹网 七彩云南 一网天下 2019-07-18
  • 【理上网来喜迎十九大】苏格:习近平总书记外交思想领航中国特色大国外交 2019-07-18
  • 8种家居环境很败“性” 2019-06-28
  • 2018年全军院校招生计划下达:计划招收学员3.05万名 2019-06-15
  • 晋城市举办干部素质提升工程第十八期专题讲座 2019-06-15
  • 抖音广告出现对英烈邱少云不敬内容 今日头条致歉 2019-06-13
  • 超半数巴西民众对世界杯不感兴趣--旅游频道 2019-06-12
  • 外交部举行中外媒体吹风会:王毅介绍上合组织青岛峰会情况 2019-06-12
  • 2018网络中国节·端午 2019-06-04
  • 韩媒:韩美商定暂停原定8月“乙支自由卫士”联演 2019-06-03
  • 重庆市公安局交通管理局互联网交通安全服务管理平台 2019-06-03
  • 俄侦察船穿越英吉利海峡 英国急派军舰战机监视 2019-05-28
  • 网购陷阱多 女子花3000元买5套化妆品只有2套是真的 2019-05-28
  • 环保约谈濂溪区主要负责同志 谢一平要求立行立改真抓真改 2019-05-25
  • 官宣!广东签约北京3冠功勋 大莫助拳阿联未来可期 2019-05-25
  • 3d两码不组技巧 3D必中七码复式 大乐透五个红球 新疆时时彩最大遗漏表 吉利平肖平码论坛 云南快乐十分开奖查询 秋风落叶精准资料一尾中特平 yy游戏大厅三张牌透视 江苏时时彩走势图表 五个号码模拟摇奖 体彩福建31选7第18294 如意彩票官网3d谜语 澳洲幸运10直播开奖结果 两码中特期期准免费中特永久公开 广东快乐十分开奖走势图