幽冥传奇热更新使用方法
频道文件
//更新下载链接地址
"update_url" => "http://192.168.1.180/dev/",
//热更新开关
"update_assets" => true,
//热更新配置
$version_info["assets_info"] = json_decode(file_get_contents("agent/dev/version.txt")); //version.txt效验文件位置
$version_info["update_data"] = base64_encode(file_get_contents("agent/dev/update.lua")); //update.lua效验配置文件位置
version.txt文件效验文件
{
"version": 1560396739,
"file_list": {"path": "list.zip", "size": 343046}
}
"version": 1560396739, 版本大于客户端 小于或等于 不更新
"size": 343046 更新地址中list.zip的文件大小 错误 获取不到配置 更新失败
客户端version.txt默认配置
{"file_list": {"path": "list.zip", "size": 338401}, "version": 1560396738, "version2": "584"}
效验逻辑
--客户端读取热更新开关状态
关闭状态--直接进游戏
开启状态--读取效验文件version.txt中"version"字符--与客户端version.txt中"version"字符对比
小于或等于直接进游戏
大于进行下一步
--加载更新地址
--效验list.zip
更新地址中list.zip ‘字节’ 与效验文件version.txt中的size ‘字节’ 对比
对比错误 更新失败
对比正确 下载list.zip
--下载list.zip后
用list.zip中的文件校验码与客户端文件校验码对比
开始更新差异文件
--更新下载
要更新文件的校验码与更新list.zip中的文件校验码对比
正确开始更新下载
错误或者文件不存在 更新失败
玩家交流群:159828177
|