2

BluetoothManager プライベート フレームワークのすべての通知を取得したいと考えています。検索してみましたが、2 つしか見つかりませんでした (BluetoothAvailabilityChangedNotification と BluetoothDeviceDiscoveredNotification)。iphone がデバイスに接続/切断されたかどうかを報告する通知に興味があります。誰かが私にすべての通知のリストを得ることができれば、私は感謝します.

4

2 に答える 2

1

呼び出す前に追加[BluetoothManager sharedInstance]:

CFNotificationCenterAddObserver(CFNotificationCenterGetLocalCenter(),
                                    NULL,
                                    bluetoothCallback,
                                    NULL,
                                    NULL,
                                    CFNotificationSuspensionBehaviorDeliverImmediately);

そして、この実装のどこかにメソッド void bluetoothCallback:

void bluetoothCallback (CFNotificationCenterRef center,
                 void *observer,
                 CFStringRef name,
                 const void *object,
                 CFDictionaryRef userInfo)
{
    if (CFStringGetCharacterAtIndex(name, 0) == 'B') { // stupid way to filter for only 'B'luetooth notifications
        NSLog(@"%@", name);
    }
}

コンソール ログにすべての Bluetooth 通知が表示されるようになりました。

于 2013-10-04T10:33:11.570 に答える