ReadMe.txt
/*
author : jave.lin
date : 2018-08-17
*/
##文件说明:
- Version.txt
- 位置:Assets/StreamingAssets/windows/zh_cn/assets/Version.txt
- 内容:
- 第一行:程序版本
- 第二行:资源版本
- 例如:
- 1.0.0.1 // 程序版本
- 2.0.0.1 // 资源版本
- FileMD5.txt
- 位置:Assets/StreamingAssets/windows/zh_cn/assets/FileMD5.txt
- 每一行的内容说明:
- [filepath1],[md5(16个字符(字节))],[size]
- [filepath2],[md5(16个字符(字节))],[size]
- 例如:
- ui/login/bg.unity3d,123456789ABCEDF0,999
##测试时的数据调整:
- 调整Unity项目中的
Assets/StreamingAssets/windows/zh_cn/assets下的Version.txt:
- 可以改一下程序版本号(注意要比原来的版本号大),那么在检测时就会打开下载界面
- 可以改一下资源版本号(注意要比原来的版本号大),那么VerCheck检测更新时会提示
可以更新,点击StartUpdate后,就会开始下载
##功能实现:
- 下载器:
- 可以在加载时放入FileMD5的单条记录信息,会自动比较MD5,确定是否删除并重新下载
- 文件的断点续传(之前未下载完得,将续集上次的数据继续下载)
- 无论下载成功还是失败,都会触发OnDone事件
- 可查看下载任务的结果类型:
- 未开始
- 成功
- 失败 HTTP_ERROR_CODE
- MD5不对
- 下载管理器:
- 可多个下载器同时下载不同的任务(4~10之间就可以了,如果网卡,硬盘速度跟得上,可以设置大一些)
- 可以设置单个资源下载失败次数的上限值,会有个标记下载失败
- 文件下载完后的MD5校验,如果不对,将删除重新下载
- 版本检测:
- 检测StreamingAssets与PersistentDataPath的Version.txt、FileMD5.txt的版本信息对比
- 如果服务器程序版本更新,将自动调整到安装包页面(url地址可配置AppInfo.cs类)
- 如果服务器资源版本更新,将自动分析FileMD5.txt与服务器的对比,得出:
- 文件差异类型:
- 添加
- 更新
- 删除
- 当所有的文件下载完后会有,可以判断,string Error是否不为空,而知道是否有错误
- (检测更新,下载更新,都可以有结果枚举类型)
- 检测结果类型:
- 未开始
- 需要重新下载安装包
- 需要下载资源包
- 不需要更新
- 错误
- 下载结果类型:
- 未开始
- 成功
- 失败(错误)
改工程是:https://blog.csdn.net/linjf520/article/details/80418523之后的一个升级版本 流程上和原来的不太一样,懒得去画了。。。。
Source:VersionCheck(u3d2017,vs2017,.net 4.6)