准备工作:
StarForce dev/Update分支 https://github.com/EllanJiang/StarForce/tree/dev/Update 注意下载子库
HFS的下载,作为文件服务器 http://www.rejetto.com/hfs/?f=dl
GF的AB模块了解 https://blog.csdn.net/qq_15020543/article/details/85028223
在这个分支里,E大已经写好了完整的更新流程
具体细节就是
ProcedureCheckVersion流程
声明更新版本更新配置表回调函数
订阅添加WebRequest任务请求的成功与失败事件
添加WebRequest任务请求
添加WebRequest任务请求成功,执行订阅的事件
反序列化为VersionInfo类(包含版本信息以及更新细节),如果为强制更新,就跳转到下载网页下载船新客户端(你没有体验过得船新版本),如果为热更新,就配置下载文件地址,校验本地客户端和下载到的版本资源列表版本号,如果一致,说明不用更新,直接进入下一流程,如果不一致,说明需要更新版本资源列表,更新成功后,进入下一流程。
ProcedureUpdateResource流程
初始化相关数据,检查资源,并设置回调函数
设置更新数量和更新的zip文件长度,如果不需要更新进入下一流程,如果需要更新,先判断用户是否处于移动网络,如果是弹出对话框 询问是否更新,如果不是(说明在用WIFI咯),就直接进行更新
开始更新资源,并安排好进度条
更新完毕,进入下一流程