LowLatencyAudio插件:在哪里调用unload函数引用音频文件?

时间:2014-05-27 10:24:25

标签: jquery audio cordova

我在phonegap构建中使用了LowLatencyAudio插件来播放声音并且工作正常。但是,当我提到this时,必须使用卸载功能才能从内存中卸载音频文件。否则,您将导致内存泄漏。 这是我的工作代码片段。

<script type="text/javascript" src="phonegap.js"></script>
<script type="text/javascript" src="PGLowLatencyAudio.js"></script>
<script type="text/javascript" src="main.js"></script>
<script>
var lla;
var url_start = 'sounds/startup.wav';
document.addEventListener("deviceready",onDeviceReady,false);
function onDeviceReady(){
   if( window.plugins && window.plugin.LowLatencyAudio)
     {
     lla  = window.plugins.LowLatencyAudio;
     lla.preloadAudio(url_start, url_start, 1, success, fail);
     }
}

function play_startup(){
 lla.play(url_start);
} 
</script>

//From main.js
play_startup(); 

我的问题是我需要调用卸载功能的地方?有没有其他方法可以避免内存泄漏?

1 个答案:

答案 0 :(得分:0)

最后我从here

得到了解决方案
 // After completing play
 // stop after 1 min 
 window.setTimeout( function(){
    //lla.stop( click_sound );
    lla.stop( music_mp3 );

    lla.unload( music_mp3 );
    lla.unload( click_sound );
 }, 1000 * 60 );