TheInitialProject/Assets/CaoCao/.~XAsset说明/使用.txt
2024-10-23 16:59:02 +08:00

41 lines
2.6 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

热更配置
1将【" {项目根路径}/BundlesCache/{平台}/updateinfo.json" 】放入外网下载路径
2将【" {项目根路径}/Bundles/{平台}/version_v{每个Build配置的版本号}.json" 】放入外网下载路径
3将【" {项目根路径}/Bundles/{平台}/{Build配置}.json" 】放入外网下载路径
4将第三步对应文件夹放入外网下载路径
项目应用:
1初始化 Assets.InitializeAsync()
XAsset 初始化流程:
0调用RuntimeInitializeHandler.cs文件
1读取streamingAssetsPath/playerassets.json
2如果有这个文件读取streamingAssetsPath/version.json文件
3检查streamingAssetsPath/version.json, 把里面的所有【{Build配置名_hash}.json】文件全部下载到persistentDataPath目录
4确保所有文件下载完发生错误则直接退出初始化
5如果persistentDataPath/version.json的版本新于streamingAssetsPath/version.json将persistentDataPath/version.json里的所有文件加入文件地址管理, 并没有确保所有文件是否存在
2下载更新文件 updateinfo.json 直接内存读取
3下载updateinfo中对应版本的version.json 保存到temporaryCachePath。
version.json相当于build的配置文件
4通过 ProcedureCheckGameVersion 下载随包资源,如果随包资源发生改变才下载。
1当version文件中包含随包资源即preloadPacks中有值时只会下载随包资源
2通过VersionsRequest.cs获取version中所有变动的Build的json文件。
- 通过比对json维护最新版Build的json文件
- 这一步完善Assets.Versions中的所有文件管理
分包检查机制:
1点击分包下载首先下载分包内文件
2文件下载完后再下载分包version文件
3这一步查找本地是否有分包的version文件检查到有分包的version文件加入 热更最新版的分包version如果没有则不会进入热更
5通过 ProcedureDownload 下载其他bundles下载完成后将version.json保存到persistentDataPath中。
1检查version文件的所有Build配置是否persistentDataPath中如果不在下载文件
2通过Assets.GetDownloadSizeAsync获取到需要下载的文件
下载路径http://{服务器地址}/Bundles/{平台}/{Build配置名}/{资源名_hash}.bundle
分包检查机制:
1如果检查到有分包的version文件加入热更最新版的分包version如果 没有,则不会进入热更
测试打包时将所有version都打进streamingassets只是在初始化时判断是否未subpackage