由于微信小游戏平台没有真实的文件系统,加载AssetBundle时往往会带来AB文件大小2–3倍的开销。因此我们添加了AssetBundle内存统计,便于查看各个AB内存占用情况,用于分析AB加载逻辑是否合理。
Memory Profiler
Simple View - Object Stats下增加以下统计:
AssetBundles: 内存中AssetBundle Object对象本身占用内存
AssetBundle Memory Storages : AssetBundle文件缓存(解压后)在C++ native heap中占用的内存
AssetBundle Disk Storage : Emscripten JS文件系统中AssetBundle文件占用内存
ProfilerRecorder接口
ProfilerRecorder新增如下接口,可以从代码中获取以下6项AB内存使用情况:
AssetBundle Count
AssetBundle Bytes(仅development版本可用)
AssetBundle Memory Storage Count
AssetBundle Memory Storage Bytes
AssetBundle Disk Storage Count
AssetBundle Disk Storage Bytes