標籤:logs http 來電 ipo 是的 ack 根據 error dbf
出現這個報錯:AVAudioSessionErrorCodeBadParam
先看看你的問題是不是在切換耳機免提的時候 聽不到聲音了,
不是的可以繼續搜尋去了
問題在這裡
把圈住的那個貨換成這個就可以了:AVAudioSessionCategoryPlayAndRecord
點開之後是這個
解釋如下:
AVAudioSessionCategoryAmbient 或 kAudioSessionCategory_AmbientSound
用於非以語音為主的應用,使用這個category的應用會隨著靜音鍵和螢幕關閉而靜音。並且不會中止其它應用播放聲音,可以和其它內建應用如iPod,safari等同時播放聲音。注意:該Category無法在背景播放聲音
AVAudioSessionCategorySoloAmbient 或 kAudioSessionCategory_SoloAmbientSound
類似於AVAudioSessionCategoryAmbient 不同之處在於它會中止其它應用播放聲音。 這個category為預設category。該Category無法在背景播放聲音
AVAudioSessionCategoryPlayback 或 kAudioSessionCategory_MediaPlayback
用於以語音為主的應用,使用這個category的應用不會隨著靜音鍵和螢幕關閉而靜音。可在背景播放聲音
AVAudioSessionCategoryRecord 或 kAudioSessionCategory_RecordAudio
用於需要錄音的應用,設定該category後,除了來電鈴聲,鬧鐘或日曆提醒之外的其它系統聲音都不會被播放。該Category只提供單純錄音功能。
AVAudioSessionCategoryPlayAndRecord 或 kAudioSessionCategory_PlayAndRecord
用於既需要播放聲音又需要錄音的應用,語音交談應用(如)應該使用這個category。該Category提供錄音和播放功能。如果你的應用需要用到iPhone上的耳機,該category是你唯一的選擇,在該Category下聲音的預設出口為耳機(在沒有外接裝置的情況下)。
注意:並不是一個應用只能使用一個category,程式應該根據實際需要來切換設定不同的category,舉個例子,錄音的時候,需要設定為AVAudioSessionCategoryRecord,當錄音結束時,應根據程式需要更改category為AVAudioSessionCategoryAmbient,AVAudioSessionCategorySoloAmbient或AVAudioSessionCategoryPlayback中的一種。
iOS OC環信即時語音切換耳機免提聽不到聲音報錯:AVAudioSessionErrorCodeBadParam