IOBluetoothHandsFreeDevice を使用して、OS X 10.10 で Bluetooth ハンズフリー プロファイルを実装しようとしています。iOS 8.2 を実行している iPhone 6 を問題なく接続して制御できます。
通話の発着信 (または Siri の使用) を最初に試みるたびに、オーディオではなく静的ノイズが電話からコンピューターにストリーミングされます。静音は完全にランダムではないように見えます。これは、私が聞くと予想される音 (着信音など) と同期しているためです。しかし、私の Mac から iPhone へのオーディオは非常にクリアです。
最初の静的な音声通話の後、同じ接続を使用して別の通話を行うと、50/50 の結果が得られ、半分の通話は完璧で、残りの半分は静的です。
基本的なコードは次のとおりです。
IOBluetoothDevice* device = ...;
_hfDevice = [[IOBluetoothHandsFreeDevice alloc] initWithDevice:device delegate:self];
uint32_t supportedFeatures = _hfDevice.supportedFeatures;
supportedFeatures |= IOBluetoothHandsFreeDeviceFeatureEnhancedCallStatus;
supportedFeatures |= IOBluetoothHandsFreeDeviceFeatureEnhancedCallControl;
supportedFeatures |= IOBluetoothHandsFreeDeviceFeatureCLIPresentation;
[_hfDevice setSupportedFeatures:supportedFeatures];
[_hfDevice connect];
// after connected delegate method...
// dial a phone number
const NSString* phoneNumber = @"...";
[_hfDevice dialNumber:phoneNumber];
// or activate siri
const NSString* activateSiri = @"AT+BVRA=1";
[_hfDevice sendATCommand:activateSiri];
私はおそらく何かを見落としていると思いますが、Bluetooth コードに関する Apple のドキュメントには、ハンズフリー アプリケーションを作成するための例が含まれていません。他の誰かがこの経験をしたことがありますか?