PhoneGap音频滞后

时间:2017-09-23 10:34:39

标签: cordova phonegap

我使用javascript在我的应用上播放一个简短的声音:

var audio = new Audio('sound.mp3');
audio.play();

调用上面的代码时,整个应用程序会出现滞后/延迟。大约200-500ms后,应用程序继续正常播放声音。在播放2-3次声音之后,似乎已经缓存了一些东西,因为它可以正常工作而没有延迟。

在iOS的PhoneGap应用中进行测试时会发生这种情况。在Chrome桌面上运行,效果很好。

3 个答案:

答案 0 :(得分:0)

基本上,200-500毫秒的延迟不是错误或性能问题,它是检测可能的双击所必需的功能。

摆脱这种延迟的解决方案是:

1)使用触摸事件的组合而不是点击事件,或者

2)如果您没有jQuery Mobile,请选择fastClick。

3)如果fastclick不起作用,请使用:

      $('yourElement').on( 'touchstart', function ( startEvent ) {});

答案 1 :(得分:0)

由于这是一个mp3链接设备,在播放之前需要下载文件,所以滞后。如果你想播放音乐没有滞后,你需要流媒体。

Wowza服务器允许您使用m3u8(HLS)协议设置流媒体。

答案 2 :(得分:0)

您可以考虑在启动应用时加载声音并将其保留在缓存中。然后,只需在需要时播放它。这应该减少一圈甚至省略它。