一、在小程序内,使用锤子系(坚果)手机 目前发现播放时长小于2秒的音频均收不到结束事件回调。目前尚未发现在其他品牌手机有此现象。
解决办法:尽量避免使用音频播放衔接上下文,如果必须使用音频衔接上下文则必须使用大于2秒的音频文件。
二、播放很短的音效(短于1秒),例如点击效果声,在很多机型下会播不出声音。
解决办法:最好不要采用比特率高于128kbps的mp3(短于1s)的文件,在很多机型下会播放短音频不出声音。换成24kbps即可。
三、在音频播放过程中退出(onHide),返回后(onShow)不能继续播放音频。
解决方法:先设置一个变量isPlaying,在播放时设为true,在onShow里延时两秒后(关键:一定要延时)判断如果isPlaying为true,即调用play()即可。其实这个延时的时间不一定是2s,只是为了保证有一些性能很差的手机能成功唤起,至于为什么延时2秒就好了,还请知道的大神不吝赐教其机制。
四:目前就只能想起这么多,后面想起来了会不定时补充的…
刚我试了一下,换成24kbps后在安卓6.0的手机中果然能播放了