关于动画unload动画不释放 资源的问题。。

这个问题我们也找了很多解决方案
经过n多次的实验后以下代码可以基本上释放load出来的动画资源(说基本上是因为 ,不清楚东西有没有泄漏)
另外在win上动画释放时不会泄漏的。。安卓和ios才会出现
CCArmatureDataManager:sharedArmatureDataManager():removeArmatureFileInfo(path)
for i=0,pngNum-1 do
CCSpriteFrameCache:sharedSpriteFrameCache():removeSpriteFramesFromFile(plist)
local fullpath =CCFileUtils:sharedFileUtils():fullPathForFilename(file)

CCTextureCache:sharedTextureCache():removeTextureForKey(fullpath)

end

首先用datamanager remove掉资源
然后对每一个plist再remove一次。。(相对路径) 这个不知道为什么 removeArmatureFileInfo 代码中一起时间remove了。。 但是不加这句话会导致后面的贴图无法unload
最后 用绝对路径remove所有动画相关的 png。。
如此就可以卸载动画中的所有 贴图资源

吐槽一句,动画这么大的资源居然没有一个统一卸载的函数。。这样我们很困扰的。。提供的卸载函数 只能卸载一些内存的对象,却对占用内存最大的贴图不进行处理实在是很坑爹的设定啊

对了。。。这个方法在ios下没问题 在安卓下会闪退。。。会调用一个zip的函数,可能是指针损坏了,,(我们有多线程后台load动画) 这个bug在查

你好,一般对于不使用的资源,可以使removeUnusedTextures()方法去除纹理。每个单例也都有pure()方法清理。

这个有一个bug 貌似会吧clone出来的资源也干掉。。。然后就很多报错了

而且 removeSpriteFramesFromFile 不做也会导出unusedtexture无法unload