首页 > Unity3D之项目开发 > Unity3D: AssetBundle的缓存加载
2017
05-26

Unity3D: AssetBundle的缓存加载

unity中有一个  WWW.LoadFromCacheOrDownload(url, int)的方法,简单讲就是从服务器上加载,如果本地缓存对应的版本号有这个资源,则从本地加载。

没有或则传入的版本号不对则从服务器上加载。

那么 坑就来了。

unity说这个版本号是自动维护的,可是我们没有办法控制,那我们怎么能传入这个值呢。 找了一些方法,大体的思路如下,后面会写上代码。

在本地打包,新建一个xml文档,保存这个包的hash128值,到文档中,再把这个文档也打包,都上传到服务器上。

每次先从服务器上获取这个xml文档,然后把对应的hash128值作为验证来判断,hash128是另外一个重载方法的参数。

下面这个是打包并且写入xml文档的代码

下面的则是读取了,下面的代码涉及到公司项目,所以不能直接运行,注意

嗯。基本上就这样。

就这样。有问题可以给我留言。

端午快到了,祝大家端午安康,没有BUG。

快吃饭了, 我觉得下载时可以试试UnityWebRequest好像会更好一点。

最后编辑:
作者:DreamWalker
我很懒,所以我没有自己的博客,先在大腿这里借住吧。

留下一个回复

This site uses Akismet to reduce spam. Learn how your comment data is processed.