-
Creator 版本: 2.4.11、2.4.12、2.4.13都测试过
-
目标平台: 微信小游戏-安卓端
我的游戏是找茬类游戏,有上百个关卡,且每个关卡内的音频资源都不同,我的策略是进入关卡就加载其所需资源(图片、音频),退出关卡就释放资源;
在微信云测试上发现大部分安卓设备的内存峰值都超过了建议值,但是所有iOS设备都正常;
如下图所示,native内存持续上涨
一番排查后发现跟音频相关,我是通过将关卡的音频资源全部干掉后又提交了云测试,native内存曲线就稳定了;
写个简单的 demoDemo.zip (2.1 MB) ,通过微信开发工具的memory检查发现以下情况:
1.第一次加载音频,内存快照中的audio对象是1,不将其释放,再次加载同一个音频,内存快照中的audio对象数量还是1,这时正常
2.第一次加载音频,内存快照中的audio对象是1,将其释放(注意,释放!),再次加载同一个音频,内存快照中的audio对象是2,这时出现内存泄露
我游戏的关卡资源加载逻辑就如同第2种情况,进入关卡就加载资源,退出关卡就将资源释放,但音频资源的内存不仅无法释放掉,再次进入关卡后内存会越积越多
另外,上述情况中,图片资源是可以正常释放掉的

现在 2.4.x的版本是谁在维护啊?