在项目种使用spine动画,一切正常。 接着调用 cc.game.restart 重启。这个时候一直放着不管他。观察任务管理器,内存会慢慢地涨, 从原来的80多M 一直到600多M。 如果一直等还会崩溃。
然后我试着吧spine动画去掉,重复刚才的重启实验,不管放多久内存都不会涨。
@minggo 大神可以帮忙看一下吗,挺严重的。
在项目种使用spine动画,一切正常。 接着调用 cc.game.restart 重启。这个时候一直放着不管他。观察任务管理器,内存会慢慢地涨, 从原来的80多M 一直到600多M。 如果一直等还会崩溃。
@minggo 大神可以帮忙看一下吗,挺严重的。
替官方回复下:
使用引擎是 cocos2d-x, 版本是: 3.17.2, jsb 项目,必现!
其实就是一个 HelloWorld 工程。粘贴一下代码到 App.js。
var spineBoy = sp.SkeletonAnimation.createWithJsonFile('res/spineboy-ess.json', 'res/spineboy.atlas', 0.6);
spineBoy.setPosition(cc.p(size.width / 2, size.height / 2 - 150));
var jumpEntry = spineBoy.addAnimation(0, "jump", false, 3);
spineBoy.addAnimation(0, "run", true);
this.addChild(spineBoy);
let button = ccui.Button.create('res/HelloWorld.png', 'res/HelloWorld.png', 'res/HelloWorld.png', 0);
button.addClickEventListener(()=>{
cc.game.restart();
});
this.addChild(button);
以上代码可以直接复现,
restart-crash.zip (622.9 KB)
今天刚遇到这个问题,一开始以为是错觉。。。现在看起来,不是个例。
我也碰到了,只能弃用spine动画了