[vivo-runtime] jsb-audio BUG

版本 v2.0.10 (理论上 v2.3.2 v2.3.3 也有同样的bug)

问题 背景音乐和音效无声音,在其他平台无问题。
原因:

  1. (对比了 2.0.10 和 2.3.3 代码) // v2.0.10 的bug
    下图红框的代码
    是在var innerAudio = playInnerAudio(path, loop, volume);
    之上,

clip._nativeAsset 已经经过了md5Pipe.transformURL,再来一次肯定有问题。

改完这个,背景音乐OK了,但是音效还是有问题。

  1. playEffect的bug (这个应该 三个版本都有吧,没测试,只测了v2.0.10)
    如下图 277 行,cc.audioEngine.play 传 clip 不行么,干嘛还传clip._nativeAsset ?
    目测 266- 269 也应该删除。
    289 应该为if (clip.loaded)?
    291也应该为 cc.audioEngine.play(clip, loop, volume);

话说我去年就报过这个地方的warning,到现在还是有问题。。。
再话说 cocos-creator-packages/adapters 这个仓库都没找到 vivo-runtime,都不知道哪里去报bug

论坛里也有反馈这个声音bug,估计也是这个地方的bug

感谢反馈,我们这边确认下:3:

谢谢反馈,方便给个 demo 吗?

另外,请问下,背景音乐调用的是 cc.audioEngine.play 吗?
音效适配层接口,可直接修改为如下:
cc.audioEngine.playEffect = function (clip, loop) {
return cc.audioEngine.play(clip, loop || false, _effect.volume);
};

  1. 说的背景音乐的bug是 v2.0.10 vivo-runtime的bug。
    最新版本已经修好了。

demo,v2.3.2 工程。 勾选 md5 cache

com.test.vivominigame.zip (947.2 KB)
VivoAudioTest.zip (370.5 KB)