來(lái)電時(shí)自動(dòng)暫停音樂(lè),掛斷后自動(dòng)恢復(fù)播放
系統(tǒng)化解決方案:一套機(jī)制+三大優(yōu)化,搞定音頻焦點(diǎn)難題
《音頻焦點(diǎn)管理》最佳實(shí)踐中,首先介紹了系統(tǒng)的管理機(jī)制:“只有獲得焦點(diǎn)的音頻流可以正常播放,失去焦點(diǎn)則不能”。在此基礎(chǔ)上再給出三大優(yōu)化方向解決焦點(diǎn)沖突類(lèi)問(wèn)題:
(1)選對(duì)音頻流類(lèi)型,讓系統(tǒng)“自動(dòng)懂事”
音頻流類(lèi)型是音頻的“身份標(biāo)簽”,系統(tǒng)會(huì)根據(jù)類(lèi)型自動(dòng)匹配焦點(diǎn)策略:終止(Stop)、暫停(Pause)、降音(Duck)和并發(fā)(Mix)。比如導(dǎo)航音頻只要選對(duì)類(lèi)型,系統(tǒng)就會(huì)智能壓低背景音樂(lè)、播完自動(dòng)恢復(fù),全程不用開(kāi)發(fā)者動(dòng)手。關(guān)鍵信息聽(tīng)得清,音樂(lè)播放不斷檔,體驗(yàn)自然更流暢。
(2)用AudioSession自定義“規(guī)則”,靈活應(yīng)對(duì)復(fù)雜場(chǎng)景
默認(rèn)策略不夠用?AudioSession來(lái)幫忙。它提供“默認(rèn)/并發(fā)/壓低音量/暫?!彼姆N模式,開(kāi)發(fā)者只需創(chuàng)建會(huì)話、綁定監(jiān)聽(tīng),就能輕松調(diào)整焦點(diǎn)優(yōu)先級(jí),實(shí)現(xiàn)業(yè)務(wù)自定義策略。
(3)標(biāo)準(zhǔn)化處理中斷事件,告別“幽靈靜音”
焦點(diǎn)被搶時(shí),怎么優(yōu)雅應(yīng)對(duì)?《音頻焦點(diǎn)管理》梳理了四類(lèi)典型場(chǎng)景:暫停后恢復(fù)、壓低音量后恢復(fù)、停止不恢復(fù)、并發(fā)播放,每種都給出了詳細(xì)處理方案。按規(guī)范操作,再也不用擔(dān)心音頻突然“失蹤”或莫名播放,體驗(yàn)更穩(wěn)定。
典型場(chǎng)景案例解析:手把手解決“斷音”難題
《音頻焦點(diǎn)管理》把常見(jiàn)的音頻焦點(diǎn)坑點(diǎn)都列得明明白白——不僅分析問(wèn)題根源,還直接給解決方案和示例代碼,照著做就能少走彎路。
比如“直播/廣告被打斷后再也不響”這個(gè)老大難:你正看直播呢,突然來(lái)電把直播音頂?shù)袅?,等掛斷電話,直播卻沒(méi)動(dòng)靜了。針對(duì)這種情況,《音頻焦點(diǎn)管理》提供了明確解法:當(dāng)應(yīng)用從后臺(tái)切換至前臺(tái)時(shí),在onPageShow()生命周期主動(dòng)調(diào)用播放接口恢復(fù)音頻;若應(yīng)用在前臺(tái)被中斷,需要應(yīng)用適配交互行為,用戶主動(dòng)觸發(fā)恢復(fù)機(jī)制。這個(gè)方案補(bǔ)足了系統(tǒng)策略局限,保證播放不“斷片”。
此外,《音頻焦點(diǎn)管理》還分析了更多日常場(chǎng)景:鬧鈴中斷視頻、直播或廣告被打斷不恢復(fù)、VoIP通話被中斷后無(wú)聲等等,每種都給了對(duì)應(yīng)方案。甚至還整理了一張“音頻流類(lèi)型與系統(tǒng)策略關(guān)聯(lián)表”,哪種場(chǎng)景該用哪種策略,查表就一目了然。
有了這套系統(tǒng)級(jí)方案,開(kāi)發(fā)者不用再為多應(yīng)用“搶聲音”反復(fù)調(diào)試,適配工作量大大減少。更重要的是,用戶聽(tīng)音樂(lè)、刷短視頻、用導(dǎo)航時(shí),聲音切換會(huì)像“無(wú)縫銜接”一樣自然——體驗(yàn)順了,應(yīng)用口碑自然更穩(wěn)。
即刻試用,打造絲滑音頻體驗(yàn)!
《音頻焦點(diǎn)管理》最佳實(shí)踐已正式登陸 HarmonyOS 開(kāi)發(fā)者官網(wǎng),只需打開(kāi)官網(wǎng)首頁(yè),搜索 “音頻焦點(diǎn)管理”,就能直接查看完整文檔和代碼示例。
從音頻流類(lèi)型怎么選、AudioSession 策略如何設(shè),到中斷事件該怎么處理 —— 所有干貨一鍵獲取,幫你快速上手。
趕緊試試,和我們一起給用戶打造從頭到尾順暢不卡頓的音頻體驗(yàn)吧!