(七)更新AssetBundles

更新 AssetBundle 很简单,只需要下载新的 AssetBundle 并替换现有的 AssetBundle。如果使用 WWW.LoadFromCacheOrDownload 或 UnityWebRequest 来管理应用程序的缓存 AssetBundle,则将不同的版本参数传递给所选 API 将触发新 AssetBundle 的下载。

更难的问题是检测要替换的 AssetBundle。我们需要两个信息列表:

当前已下载的 AssetBundle 及其版本信息的列表

服务器上的 AssetBundle 及其版本信息的列表

更新程序应下载服务器端 AssetBundle 列表并比较这些 AssetBundle 列表,再重新下载缺少的 AssetBundle 或已更改版本信息的 AssetBundle。当然你也可以编写一个自定义的系统来检测 AssetBundle 的更改。自己编写系统的大多数开发人员会选择对 AssetBundle 文件列表使用行业标准数据格式(例如 JSON)和并使用标准 C# 类(例如 MD5)来计算校验和。

你可能感兴趣的:((七)更新AssetBundles)