表现的现象,主要是音频无法暂停,或者设置音量,无法停止播放,等等。
跟踪调试后,发现是 _id2audio 里面竟然没有这个audio id了,百分百确定之前并没有 stop 这个audio id,也没做过任何 uncache操作。
另外这个audioid 是在一连串的初始化中消失的,比如我连续play 了 4个loop的音频,正常情况下,都是4个连续的audioid,比如 1,2,3,4;不过有时候,中间突然间少了一个audioid ,变成1,2,4 , 3不见了 ,但是3其实已经在播放了,结果3停不下来,完全失控了。
比较麻烦的是,这个问题是概率性出现的…
目前猜测可能是这段代码是个导火索,但应该不是本质问题
主要调整是 把 this.id 换成闭包 id,原本的 this.id 使用的是复用对象池里的audio的id,这个或许有可能那个audio 的id,还没有被更新吧。
最后,这样的调整似乎确实起到效果了 。
但不确定会不会有其他问题,还是要麻烦引擎开发者们看下了 

