Skip to content

Native 资源下载缓存优化 - 设计图

1. 整体架构

整体架构

说明

  • 缓存命中(绿色路径):8 层校验通过后直接加载资源,无网络请求
  • 缓存未命中(橙色路径):触发 jsb.AssetsManager 下载,完成后写入缓存
  • 三级存储:localStorage 持久化、内存缓存加速、搜索路径支持资源加载

2. isDownloaded() 8 层校验流程

8层校验流程

校验层级

层级检查内容失败处理
内存缓存 _downloadedMap继续下一层
Native 平台判断Web 端直接返回 false
localStorage 记录返回 false
commonVersion 版本匹配清除缓存 + 返回 false
manifest 文件存在清除缓存 + 返回 false
manifest 版本匹配清除缓存 + 返回 false
资源文件抽样检查清除缓存 + 返回 false
添加搜索路径-

3. 优化前后对比

优化前后对比

关键差异

指标优化前优化后
网络请求每次启动都请求 manifest缓存命中时无请求
加载速度受网络延迟影响本地校验,毫秒级
离线支持需要网络确认版本完全离线可用

4. 数据存储结构

数据存储结构

存储格式

javascript
// localStorage Key: "ResourceManV2_DownloadCache"
{
    "activity/club_event_box": "93.6.905520",
    "slot/wild_fever": "93.6.905520",
    "poster/card_system_xxx": "93.6.905520"
    // resourcePath: commonVersion
}

相关文档

  • 技术文档:docs/优化重构/resource-v2/Native资源下载缓存优化.md
  • OpenSpec 归档:openspec/changes/archive/2026-01-13-optimize-native-download-cache/

Released under the MIT License.