簡體   English   中英

ios在通話期間向揚聲器發送音頻

[英]ios send audio to speakers during phone call

有人知道如何在打電話時停止iphone靜音揚聲器輸出嗎?

我正在開發一個應用程序,我需要能夠通過手機揚聲器播放音頻,同時還有一個電話呼叫...

希望有人可以幫忙!

我知道有一個公認的答案,但我不認為這是完全正確的。 某些導航應用程序(例如Waze)可以在通話期間提供音頻指示。 如果您使用AVAudioPlayer您可以通過響應audioPlayerBeginInterruption: delegate來處理中斷(即電話呼叫)(您可以在此處閱讀更多相關信息)。

雖然我沒有太多時間來研究它,但我確實設法播放一個簡短的聲音文件,同時使用以下代碼啟動電話或播放歌曲:

-(void)audioPlayerBeginInterruption:(AVAudioPlayer *)player
{
    NSString *path = [[NSBundle mainBundle] pathForResource:@"mySound" ofType:@"mp3"];
    SystemSoundID soundFileObject;
    NSURL *pathURL = [NSURL fileURLWithPath : path];
    CFURLRef soundFileURLRef = (CFURLRef)CFBridgingRetain(pathURL);
    AudioServicesCreateSystemSoundID(soundFileURLRef, &soundFileObject);
    AudioServicesPlaySystemSound(soundFileObject);
}

請記住,當您的應用程序出現中斷時,可能會出現背景或暫停,這也會影響您播放聲音的能力(或運行任何其他代碼)。

我不認為這是可能的,我希望不是,因為個人而言,我不希望任何應用程序重新編碼我的電話或用惡作劇聲音打斷重要的電話。

我認為如果從安全角度考慮這個問題,這將是一個非常危險的事情。

我不相信Apple在通話期間允許其他音頻與音頻混合。 Apple希望確保編寫得不好的應用程序不會干擾用戶在手機上執行重要功能(例如撥打電話)的能力。 所以你的應用程序基本上被迫遵守。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM