美文网首页
热更新架构和原理

热更新架构和原理

作者: DarkKnightRedoc | 来源:发表于2018-03-09 13:49 被阅读0次

    含义

    热更新:在不改变原包的基础上进行功能更新。
    增量更新:比较旧包和新包的大小,找出其间的差异,然后安装差异部分,这不属于热更新。


    热更新思路和原理

    客户端和服务器上分别保存有配置文件,程序启动时使用http协议下载服务器的配置文件来与客户端的进行逐行对比,通过比较md5码找出不同的资源和脚本代码(需要更新的部分),把对应的资源和代码下载下来并将本地的覆盖。

    配置文件是一个文本
    配置文件中存着资源或脚本文件的名字以及其对应md5码。如一个md5码为abcd的存储在lua/Logic/目录下的名为Network.lua的脚本,其在配置文件中的存储形式为

    lua/Logic/Network.lua|abcd
    

    配置文件中的内容即是多行这样的由目录,资源或脚本名以及其对应md5码组成的文本
    若资源或脚本有所改动,其对应的md5值也会发生变化。

    若平台SDK升级,则不能使用热更新,而需要强制更新客户端(重新下载安装)/增量更新。


    MD5中的MD代表Message Digest,就是信息摘要的意思,不过这个信息摘要不是信息内容的缩写,而是根据公开的MD5算法对原信息进行数学变换后得到的一个128位(bit)的特征码。简单地说就是一个电子文件的指纹。

    关于md5码百度百科有详细解释:https://baike.baidu.com/item/MD5%E7%A0%81

    相关文章

      网友评论

          本文标题:热更新架构和原理

          本文链接:https://www.haomeiwen.com/subject/pdmpfftx.html