2014-08-29 223 views
1

我正在使用navigator.getUserMedia進行語音備忘錄應用。它像一個魅力。如何關閉麥克風?

當我退出應用程序時,麥克風保持打開狀態(有一個通知「音頻備忘錄麥克風已打開」,並且紅點仍保留在狀態欄中,即使手機進入睡眠狀態十五分鐘後仍保持打開狀態。

如何打開麥克風關閉時,我退出應用程序,我已經檢查mediastream API,但找不到任何參考

回答

3

您是否嘗試過停止方法:。https://developer.mozilla.org/en-US/docs/Web/API/MediaRecorder.stop

有可能是一種更好的方法,但我通過使用類似於以下代碼的方式來關閉最小化的應用程序: mediaRecord呃是綁定到流的MediaRecorder對象的引用。您也可以在由GetUserMedia調用返回的流上調用stop。還必須調用應用程序的初始化設置。

function handleVisibilityChange() { 
    if (document.hidden) { 
    console.log("hidden"); 
    if(gumStream){ 
     gumStream.stop(); 
     mediaRecorder = null; 
    } 
    } else { 
    console.log("visible"); 
    setup(); //Call getUserMedia 
    } 
} 

document.addEventListener("visibilitychange", handleVisibilityChange, false); 
+0

是的。這就是我停止錄製過程的方式。但麥克風仍然保持打開。順便說一句,它的火焰手機和FFOS1.3 – 2014-08-29 21:14:02

+0

你正在退出應用程序或只是最小化?我在Flame 1.3上試了一下,在我殺了這個應用之後幾秒鐘後麥克風就熄滅了。當我最小化它保持。 – 2014-08-29 22:37:36

+0

謝謝傑森。我想這會帶來真正的問題。我一直認爲點擊主頁按鈕意味着退出應用程序。但我認爲這只是最小化它。所以我必須按住主頁按鈕,就好像我想切換應用程序並點擊刪除按鈕? – 2014-08-30 03:56:21