Android音頻焦點AudioFocus使用

Android音頻焦點AudioFocus使用

Android開發(fā)中免不了需要播放視頻,音頻文件,但是手機上可能有其他的一些軟件,在后臺播放音頻的時候,這個時候另外的軟件也需要播放音頻,這個時候就會出現(xiàn)倆個音頻同時播放的問題,在Android2.2之后提供了audioFocus獲取音頻的焦點,但是這個并不是強制需要實現(xiàn)的,所以當(dāng)你在測試的時候,有的應(yīng)用沒有處理的音頻焦點,所以會感覺沒有效果,其實我個認(rèn)為可以使用系統(tǒng)的音樂播放器做測試,基本不會出現(xiàn)什么問題(處理的時候注意內(nèi)存泄漏)

圖片發(fā)自簡書App

4,處理丟失焦點2

focusChange參數(shù)告你音頻焦點時如何改變的,并且能夠是下面的值之一(它們是所有的在AudioManager類中定義的常量):

AUDIOFOCUS_GAIN:你已經(jīng)獲得音頻焦點;

AUDIOFOCUS_LOSS:你已經(jīng)失去音頻焦點很長時間了,必須終止所有的音頻播放。因為長時間的失去焦點后,不應(yīng)該在期望有焦點返回,這是一個盡可能清除不用資源的好位置。例如,應(yīng)該在此時釋放MediaPlayer對象;

AUDIOFOCUS_LOSS_TRANSIENT:這說明你臨時失去了音頻焦點,但是在不久就會再返回來。此時,你必須終止所有的音頻播放,但是保留你的播放資源,因為可能不久就會返回來。

AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK:這說明你已經(jīng)臨時失去了音頻焦點,但允許你安靜的播放音頻(低音量),而不是完全的終止音頻播放。目前所有的情況下,oFocusChange的時候停止mediaPlayer */

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容