Использование Private Framework BluetoothManager / iOS 5.0 - PullRequest
1 голос
/ 24 декабря 2011

Я могу включить Bluetooth с помощью Private Framework.

Теперь мне нужно искать ближайшие устройства. Я думаю, что команда deviceScanningEnabled правильная, но как мне получить возвращенные устройства? Есть ли какая-нибудь функция обратного вызова? Я читал о некоторых уведомлениях, которые будут в NotificationCenter ?!

Как мне использовать это в этом контексте?

Ответы [ 3 ]

2 голосов
/ 03 июня 2012

Насколько я знаю, менеджер bluetooth получает список после того, как ОС отфильтровывает результаты - это означает, что вы получите только близлежащие гарнитурные устройства, а не все общие устройства. Если вам нужно найти все общие устройства, вам придется использовать ответ @ rajagp.

В случае, если достаточно найти гарнитуру, вы можете использовать уведомления, как вы сказали; уведомление об обнаружении устройства называется «BluetoothDeviceDiscoveredNotification». Сначала вы должны перечислить уведомления с:

[[NSNotificationCenter defaultCenter] 
    addObserver: self
    selector: @selector( your_discovery_method_name)
    name: @"BluetoothDeviceDiscoveredNotification"
    object: nil];

"your_discovery_method_name" - это метод, который вы пишете, который показывает / принимает уведомление. Это будет выглядеть примерно так:

-(void) your_discovery_method_name:(NSNotification *) notification {
     self.device = [notification object];

     NSLog(@"found: %@",self.device.address);
     // ...
}

Устройство относится к типу BluetoothDevice.

0 голосов
/ 20 марта 2013

заменить

[btManager setDeviceScanningEnabled:YES]; 

на

[btManager scanForServices:0xFFFFFFFF];

я не знаю почему, но вы обнаружите все устройства поблизостиЗатем вы можете выполнить сопряжение устройства.

Это то место, где я застрял ... Я не могу установить соединение или обмениваться данными

0 голосов
/ 10 января 2012

Если вы разрабатываете для взломанного телефона, я бы порекомендовал стороннюю библиотеку BlueTooth - BTStack. Он прост в использовании и работает довольно хорошо для меня. Доступно по адресу: http://code.google.com/p/btstack/.

...