我正在嘗試使用IOBluetooth framework
上的OS X 10.8.2與支持藍牙功能的電話連接,將電腦仿真爲免提設備。我可以成功與手機建立連接,手機可以將連接識別爲連接到手機的免提。 但是,當我嘗試使用手機撥打電話並想要將音頻發送到Mac時(通過將來源選爲免提),音頻永遠不會到達計算機。無法打開與電話的SCOAudio連接
由於此時藍牙框架試圖用設備打開SCO Audio connection
,但連接建立從未成功,我得到錯誤代碼0x0D
狀態代碼處於scoConnectionOpened狀態。
我使用IOBluetoothAddSCOAudioDevice
函數將SCO音頻設備連接到藍牙設備,並且它始終成功。
//btDevice is paired
res=IOBluetoothAddSCOAudioDevice((IOBluetoothDeviceRef) btDevice,NULL);
if(res != kIOReturnSuccess)
{
self.error.title = [NSString stringWithFormat:
@"Could not attach the Audio device. Try paring device again"];
}
控制檯日誌說
24/11/2012 4:02:13.000 PM kernel[0]: [SendHCIRequestFormatted] ### ERROR: [0x0428] (Setup Synchronous Connection) -- Send request failed (err = 0x000D (kBluetoothHCIErrorHostRejectedLimitedResources))
24/11/2012 4:02:13.000 PM kernel[0]: REQUIRE_NO_ERR failure: 0xd - file: /SourceCache/IOBluetoothFamily_kexts/IOBluetoothFamily-4090.4.33/Core/Family/Drivers/IOBluetoothSCOAudioDriver/IOBluetoothSCOAudioDevice.cpp:872
雖然控制檯日誌中說,資源有限,但我以他們的電池多部手機全試了一下。
我難住這個,只是想如果我需要做任何特別的或不同的事情?
非常感謝您的幫助。
嘿,你能解決這個問題嗎?因爲我的應用需要類似的功能。 – Daniel
暫時還沒有:-(我在這個問題上停留了很長一段時間,SCO Audio在OS/X上的表現並不一致,而且我無法解決這個問題 –