-
Creator 版本:cocos creator 2.0.10
-
目标平台:
-
详细报错信息,包含调用堆栈:

-
重现方式:直接调用 cc.loader.releaseAll():NewProject.zip (322.7 KB)
-
之前哪个版本是正常的 :
-
手机型号 :
-
手机浏览器 :
-
编辑器操作系统 :
-
编辑器之前是否有其它报错 :
-
出现概率:100
-
额外线索:
Creator 版本:cocos creator 2.0.10
目标平台:
详细报错信息,包含调用堆栈:
重现方式:直接调用 cc.loader.releaseAll():NewProject.zip (322.7 KB)
之前哪个版本是正常的 :
手机型号 :
手机浏览器 :
编辑器操作系统 :
编辑器之前是否有其它报错 :
出现概率:100
额外线索:
顺便再报一个,当使用 playMusic 播放背景音乐,对它设置setFinishCallback,第一次播放进入了回调方法,第二次播放该回调方法未生效,这是为什么?重现方法在demo中。。。。。
cc.loader.releaseAll(),这个是释放所有资源。你是在哪里调用的?如果调用这方法之后,其他地方还有引用到被你释放掉的资源,就会报错。
你随便创建一个工程,什么都不用加载,就直接调用,也会报错,或者你把demo下下来看
我是这样理解的,不懂对不对。你在当前场景点击按钮释放所有资源,该场景下的比如cocos2dx那张图就被你释放掉了,但是场景还在引用他。所以这个方法调用时机,应该是在场景切换的时候的onDestroy方法里调用。你要释放你loadres进来的音频资源,应该用cc.loader.release方法去释放。
我在cc.game.restart()调用之前去调用cc.loader.releaseAll(),我游戏需要重启,我释放所有资源,没毛病吧?
第一点:游戏都要重启了,所有的资源都会释放掉,为什么还要手动调用releaseall。
第二点:你这样调用也是有问题的,你释放所有的资源的前提,是要在所有引用都被释放掉的前提,你这样调用,被你释放的那些资源没有被其他地方引用了?明显是有。
creator又没有引用计数,引擎根本不会释放你的资源