GameFramework篇:StarForce资源热更新讲解(二:具体操作步骤)

上篇我们讲解了基本的实现流程,那么本篇我们来谈谈实际操作,从零开始一步步配置

先来捋一遍思路

首先,Full目录下的资源是Unity打出来的AssetBundle经过加密(如果选择了Load from memory and Decrypt或quick Decrypt)和Zip压缩(如果选择了Zip压缩)后,加上资源的hashcode在加上了一个dat后缀生成的。其中version.dat中记录了每个AssetBundle的原始大小,原始HashCode,压缩成Zip后的大小及Zip包的HashCode,你本地的AssetBundle的HashCode与服务器上的进行对比,如果不一致就需要更新,Zip包的HashCode是干啥的呢,因为你从服务器上下的资源是Zip压缩后的,资源下载下来后,需要计算你下载下来的这个资源的HashCode与服务器上这个资源的ZipHashCode做一个对比,不一致就说明你下载出错了,这个资源不能用。然后解压后,也需要将解压后计算得到的HashCode与服务器上的对比,ZipHashCode和解压后的HashCode都一致这个AssetBundle才能用。

version.hashcode.dat这个文件是放在服务器上的,做资源更新时,你首先就好获取这个文件,那么这个文件你怎么校验呢,这就到了GameResourceVersion_0_1_0.xml这个文件,里面记录了最新资源的版本号,以及你的version.hashcode.dat这个文件的特征值。

GameEntry.Config.BuildInfo.CheckVersionUrl是在Assets\GameMain\Configs\BuildInfo.txt中设置的,CheckVersionUrl指向版本信息配置表version.txt,是由GameResourceVersion_0_1_0.xml来的,于是乎我们也创建这样一个version.txt放到我们自己的服务器上。

因为这个文件的URL是从Assets\GameMain\Configs\BuildInfo.txt中获取的,所以这个文件也要改,把CheckVersionUrl指向你自己服务器上的version.txt。

具体操作

1.打AB包,比当前版本高一版本即可(默认为1,但是我打过一次了,所以当前版本为2,所以我要打版本为3的AB包)

2.添加AB文件到HFS

4.配置文件

新建version.txt文件,注意VersionListLength,VersionListHashCode,VersionListZipLength,VersionZipHashCode要对上GameResourceVersion_0_1_0.xml的数值

拖到HFS

更改BuildInfo.txt,关键是CheckVersionUrl要配置好,其余的随意

 这是下载资源的地址

OK,运行游戏

参考:QQ:471812771(李春)

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值