2013-06-04 58 views
2

我已創建了PhoneGap的一個應用程序,從在線流播放音樂。當iPhone被鎖定時,它會在後臺繼續播放,但當來電電話到達時它會停止播放。的PhoneGap HTML5音頻後不來電恢復播放iPhone上

的問題是,當電話通話結束後,音樂不健全了。我使用HTML5 audio元素播放流,並且我的應用跟蹤顯示playplaying HTML5音頻元素事件在通話結束後觸發。

但是,它根本不會產生任何音樂或聲音都沒有。

回答

0

掛接到暫停和恢復科爾多瓦的事件在你的應用程序,如果你在暫停狀態,那麼您的應用程序被暫停,不會玩什麼。您應該在簡歷活動中調用您的播放功能。富勒更多信息請參見事件:http://cordova.apache.org/docs/en/2.6.0/cordova_events_events.md.html#Events

+0

對不起,那是我的情況下,沒有解決方案。當應用程序轉到後臺時,會觸發「暫停」事件(即使音樂仍在後臺播放),並且當觸發「resume」事件時。如果在電話開始和電話結束時觸發類似事件,它可以工作。 –

0

當音頻設備啓用 爲您的應用程序之前執行播放命令它發生。

啊這是因爲當你的呼叫到達時,要回應用&播放音頻它需要幾秒鐘,總之它需要幾秒鐘的通話ends.if後啓動音頻設備的應用程序關閉你的前音頻設備執行播放指令啓動您的應用程序

您可以通過科爾多瓦的恢復事件

+0

問題是,當手機通話開始時,iOS會自動停止我的應用中的音頻。通話結束後,iOS會自動繼續播放我的應用中的音頻。你說的話有很大的意義,但是,僅僅通過處理'resume'事件,我能否在音頻設備準備好之前阻止iOS自動啓動音頻播放? –

0

解決這個爲Android程序員,也有類似的問題。在處理使用HTML5的CordovaWeb視圖時,如果活動因其他事情(例如電話呼叫)而中斷,則需要使用代碼進行處理。在Android中,當有中斷時,調用onPause或類似的函數。在那裏面,你需要保存狀態,以及webview頁面的URL。

當您導航回來,你需要恢復狀態。

我知道我在講的Android,而這是iOS上,但這樣做的東西一樣,當一些重疊。

參見:Save & restoring WebView in an embedded PhoneGap app