我使用javascript在我的应用上播放一个简短的声音:
var audio = new Audio('sound.mp3');
audio.play();
调用上面的代码时,整个应用程序会出现滞后/延迟。大约200-500ms后,应用程序继续正常播放声音。在播放2-3次声音之后,似乎已经缓存了一些东西,因为它可以正常工作而没有延迟。
在iOS的PhoneGap应用中进行测试时会发生这种情况。在Chrome桌面上运行,效果很好。
答案 0 :(得分:0)
基本上,200-500毫秒的延迟不是错误或性能问题,它是检测可能的双击所必需的功能。
摆脱这种延迟的解决方案是:
1)使用触摸事件的组合而不是点击事件,或者
2)如果您没有jQuery Mobile,请选择fastClick。
3)如果fastclick不起作用,请使用:
$('yourElement').on( 'touchstart', function ( startEvent ) {});
答案 1 :(得分:0)
Wowza服务器允许您使用m3u8(HLS)协议设置流媒体。
答案 2 :(得分:0)
您可以考虑在启动应用时加载声音并将其保留在缓存中。然后,只需在需要时播放它。这应该减少一圈甚至省略它。