2012-03-22 30 views
0

有沒有一種方法可以編程檢查音頻系統是否在iPhone上獨佔使用?如果某個應用程序嘗試在FaceTime或蜂窩電話處於活動狀態時使用音頻系統,則在嘗試啓動音頻時會出現錯誤。我想在嘗試啓動音頻之前檢查音頻系統是否被獨佔使用。檢查音頻系統是否正在使用

我正在使用的應用程序是一個VOIP類型的應用程序。當有來電時,我想在允許應答呼叫之前檢查音頻系統是否可用。我嘗試過CTCallCenter,它可以用於手機通話,但FaceTime通話不會顯示在那裏。

感謝,康韋

回答

0

你能不能儘快被檢測到來電,一旦用戶接受呼叫啓動隊列初始化音頻輸入?

+0

這將工作,但它意味着我們的音頻代碼的重新工作。現在,我只是想讓這個呼叫被接受,如果有一個音頻初始化失敗,我會用一個錯誤信息掛斷電話。 – 2012-03-27 13:47:08

-1

查看音頻會話文檔中的中斷處理代理。

https://developer.apple.com/Library/ios/documentation/Audio/Conceptual/AudioSessionProgrammingGuide/Introduction/Introduction.html

您可以在應用程序中設置一個標誌,以防止你的語音呼叫應答,如果你是beginInterruption和endInterruption方法之間。

+0

beginInterruption和endInterruption有幾個問題: – 2012-03-27 13:38:42

+0

第一個問題:它們沒有成對出現,所以在某些時候我最後收到了一個beginInterruption但沒有收到endInterruption;那麼我的應用程序認爲它不斷中斷。第二個問題:中斷機制不會妨礙不可中斷的音頻(手機和麪對面通話)和可中斷的音頻(音樂播放器)。 – 2012-03-27 13:42:09

+0

很抱歉,您仍然有麻煩。如果你找到一個很好的解決方案,那麼請張貼它。我很樂意聽到這個消息。 – learnvst 2012-03-27 14:24:15