Files
AIC-Project/CDN

CDN 根目录

内网 / 线上资源分发根。由独立静态文件服务 Server/Cdn.Runner 提供:

dotnet run --project Server/Cdn.Runner -- --root <仓库>/CDN --port 15081 --lan

客户端通过 DevDiscovery 拿到 CDN 根地址http://<lanip>:15081/,存入 GlobalData.CurCDN), 再从根派生下面两套子树。两套都是根下的兄弟目录。

CDN/
├─ XWorld/                 # ① 旧全量热更链路(大厅 / 基础客户端资源)
│   ├─ pc/                 #   按平台分目录(pc / android / ios
│   │   ├─ updatever.txt   #   版本号:dllmd5,filelistmd5
│   │   ├─ files_<md5>.txt #   资源清单(md5 命名)
│   │   └─ <资源>_<md5>.unity3d   # ABmd5 命名,含 StreamingAssets_<md5>.unity3d
│   ├─ android/
│   └─ ios/
└─ minigame/               # ② 小游戏资源
    └─ <id>/<ver>/<platform>/ #  每个小游戏每个版本每个平台一目录(platform=pc/android/ios/webgl
        ├─ game.json
        ├─ files.txt
        ├─ files.txt.sig
        ├─ code_<md5>.unity3d
        └─ res_<md5>.unity3d

各链路取值

链路 消费方 取值
① 旧全量热更(大厅) UpdateModule.UpdateResAllUpdate.cs);运行时 AB 由 XResLoadercoLoadXIDAB/coLoadXIDFile("XWorld",…) AppConst.UpdateServer = <CurCDN>XWorld/,再 +<platform>/<根>/XWorld/<platform>/…XResLoaderm_dicXidCDN["XWorld"]=<CurCDN> + 路径 XWorld/<platform>/…
② 小游戏 MiniGameDownloaderCSharpClientApp.ResolvedCdnBase <CurCDN> 末尾补 minigame/,再 +<id>/<ver>/<platform>/<根>/minigame/<id>/<ver>/<platform>/…

来源(怎么把产物放进来)

  • XWorld/:基础客户端/大厅的打包产物(updatever.txt + files_<md5>.txt + AB),按平台放进 XWorld/<platform>/
  • minigame/Unity 菜单「XWorld/生成小游戏更新」直接产出到 minigame/<id>/<ver>/<platform>/(客户端 AB + game.json/files.txt/files.txt.sig)。

说明:本目录下除 .gitkeep 占位外为发布产物,通常不纳入版本库(按需)。