发现安卓原生平台下,音效和背景音乐问题很严重啊

音效用cc.audioEngine.playEffect播放,背景音乐用cc.audioEngine.playMusic播放,都是mp3格式。

在微信和抖音小游戏平台一切正常。但在安卓平台下就是各种千奇百怪的异常了。
先说结论,结论1:音效和背景音乐冲突,也就是播放音效时中断背景音乐。结论2:音效和背景音乐导致卡死。

1、音效和背景音乐冲突
比如一个物体在移动(移动时发出音效)的这样一个场景,如果用按钮控制物体移动,那么现象是当发出音效时,背景音乐被中断一下,音效结束后,背景音乐继续。

同样是上述场景,如果用手势来控制物体移动,那么现象是当发出音效时,背景音乐被中断,音效结束后,背景音乐重头播放(注:和上述的区别是重头播放,而不是从间断处播放。这个给人的感觉更不好。)。

在程序中,用按钮和手势控制物体移动,其实都是调用了同一个move()方法。区别是用按钮控制时比较简单,直接调用move()方法。用手势控制时,有一些getTouches(),然后做一些位置和方向判断之类的处理,这之后才是调用的move()方法。也就是说,用手势控制时,代码量略微多些,系统开销也可能会大些。但总之就都是音效会中断背景音乐,区别是上述所描述的那样:按钮控制时背景音乐被中断后,从被中断处接着播放,手势控制是背景音乐被中断后,重头播放。

2、音效和背景音乐导致卡死。
有时会出现卡死现象,报错是:frameworks/wilhelm/src/android/AudioPlayer_to_android.cpp:886: pthread_mutex_lock_timeout_np returned 110

现在已经彻底被这些千奇百怪的现象搞晕了,都没信心接着往原生平台发布了。请各位老师多多指点,给点思路也可以,万分感谢!

这个问题我们没有复现出来,可以提供个demo吗? :12:

感谢回复,我是很想提供demo,但是不知道怎么传这样的代码啊,代码量很大。。。我这里也没啥保留的,如果能传,我把整个游戏整体传给你们都可以。

另外,既然您那里无法复现,是不是我的开发环境有问题啊,比如下面帖子里说的问题(这个问题无需demo,非常简单)您那里能复现吗?如果您那里也不能复现,可能就是我的开发环境问题了。
注:我的cocos creator是2.4.4,android studio是3.1.2,PROP_TARGET_SDK_VERSION=27,PROP_BUILD_TOOLS_VERSION=28.0.3,NDK r19c

或者我私信告诉您微信小游戏名称,您那里把代码反编译一下,是不是更方便些呢?

是原生的问题?你可以打个调试版本的测试APK,私信链接给我。

给您发私信了,请问收到了吗?

卡死的问题我也遇到过,是短时间内停止、播放音效导致的,上层做下管理,避免这种情况的出现。

感谢回复,卡死问题貌似解决了,现在就是这个粒子问题搞不懂。cocos creator2.4.4,粒子效果就是顽强的不显示

@3481584861你好,请问你的卡死问题是怎么解决的

后面你会发现ios声音也是很多问题

同求 请问卡死问题怎么解决的啊

大佬你卡死问题怎么解决的啊?

怎么解决的呀,还是根本没解决?