Creator2.0.10背景音乐消失术

  • Creator 版本:2.0.10

  • 目标平台: 微信小游戏

  • 详细报错信息,包含调用堆栈:

  • 重现方式:(音乐都是挂在场景上的AudioClip组件上,同时setAutoReleaseRecursively(this.audio,false))玩着玩着(切换场景切换背景音乐)

  • 手机型号 :三星note5、小米mix2、荣耀9、oppoK1、iphoneX 米板4 vivoY85

  • 出现概率:概率不高,但是QA能测出来而且提供这么多型号。。。。所以问题肯定是存在的!

//代码

playAudioMusic(name,music){//name自定义的音乐名字 music对应的AudioClip
    if (this.musicName === name){ return }
    this.stopAudioMuisc()
    this.musicName = name
    cc.audioEngine.playMusic(music,true) 
}

stopAudioMuisc(){
    this.musicName = null
    cc.audioEngine.stopMusic()
}

https://forum.cocos.com/t/creator-2-09/79652
这个帖子上的已经修改过,确定打包出来的代码已经包含。但是问题还是存在!

同问,creator升级到2.0.10,背景音乐莫名消失,之前2.0.8,2.0.9版本没有这个问题。有解决方案吗。很大情况是播放其它音效播放时,然后背景音乐就突然没了

麻烦给我一个你的测试demo,这样我能快速确认问题。

这个demo我也不知道怎么提供。游戏涉及的音效很多,只给你场景挂音乐,万一是音效导致就变成误导了。
=======游戏涉及到的API:playMusic playEffect stopMuisc stopEffect setVolume(只是设置音效不会设置音乐) stopAllEffects(游戏逻辑有的时候切换场景会终止当前音效,微信小游戏返回会发生一次性播放好多音效,所以返回时也会终止一次)

其中请重点排查stopAllEffects,理由是其他项目QA说不会,问过程序区别就是没有使用这个(当然不敢保证是这个问题- -)

好吧 那我重新描述一下复现方式:
有两个场景 A和B 场景A有A组件,property有AudioClip属性,场景A每次加载的时候都会自动播放背景音乐,结束场景时,通过setAutoReleaseRecursivel设置不自动释放资源。
然后我重复跳转B与A之间,背景音乐会莫名消失?

1,有场景:ABCDEFGH,场景都是自动释放,场景切换之后就调用上面的代码 playAudioMusic(name,music)
2,每个场景都挂一个AUDIOCLIP(当然部分场景挂的音乐是一样的资源)
3,所有背景音乐都设置setAutoReleaseRecursivel不自动释放
4,游戏中,使用很多playEffect和stopEffect,部分地方会stopAllEffects停止音效和setVolume设置某些音效的音量
5,场景切来切去(但是不敢保证是因为切来切去导致消失)

1赞

另外MAC模拟器,经常碰到声音播着播着突然就没了,不知道对你有用没~

1赞

还是麻烦你抽空给个demo,我复现不出来。

1赞