Iphone обнаруживает устройства Bluetooth

Я делаю приложение для iPhone, и мне нужно найти ближайшие устройства Bluetooth. Я использую CoreBluetooth Framework, и это не работает. Я знаю, что эта структура предназначена только для Bluetooth с низким энергопотреблением, поэтому я купил USB-адаптер Bluetooth 4.0, который поддерживает низкое энергопотребление. Я тестирую это приложение на своем iPhone 5. Это мой код

- (void)centralManagerDidUpdateState:(CBCentralManager *)central{ 
NSString *messtoshow;

switch (central.state) {
    case CBCentralManagerStateUnknown:
    {
        messtoshow=[NSString stringWithFormat:@"State unknown, update imminent."];
        break;
    }
    case CBCentralManagerStateResetting:
    {
        messtoshow=[NSString stringWithFormat:@"The connection with the system service was momentarily lost, update imminent."];
        break;
         }
    case CBCentralManagerStateUnsupported:
         {
        messtoshow=[NSString stringWithFormat:@"The platform doesn't support Bluetooth Low Energy"];
        break;
         }
    case CBCentralManagerStateUnauthorized:
         {
        messtoshow=[NSString stringWithFormat:@"The app is not authorized to use Bluetooth Low Energy"];
        break;
         }
    case CBCentralManagerStatePoweredOff:
         {
        messtoshow=[NSString stringWithFormat:@"Bluetooth is currently powered off."];
        break;
         }
    case CBCentralManagerStatePoweredOn:
         {
        messtoshow=[NSString stringWithFormat:@"Bluetooth is currently powered on and available to use."];
        [mgr scanForPeripheralsWithServices:[NSArray arrayWithObject:[CBUUID UUIDWithString:@"180A"]] options:[NSDictionary dictionaryWithObject:[NSNumber numberWithBool:NO] forKey:CBCentralManagerScanOptionAllowDuplicatesKey]];

        [mgr retrieveConnectedPeripherals];


        break;
    }               
}
NSLog(messtoshow); 
}   

- (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:
(CBPeripheral *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI
{
NSLog(@"Did discover peripheral. peripheral: %@ rssi: %@, UUID: %@ advertisementData: %@ ", peripheral, RSSI, peripheral.UUID, advertisementData);
[mgr retrievePeripherals:[NSArray arrayWithObject:(id)peripheral.UUID]];
}

-(void)centralManager:(CBCentralManager *)central didRetrievePeripherals:(NSArray *)peripherals{
NSLog(@"This is it!");
}

Этот отпечаток «Bluetooth в настоящее время включен и доступен для использования.», Но не находит мой usb-bluetooth или какое-либо другое устройство bluetooth поблизости. Мне нужно решение для этого, я схожу с ума. Большое Вам спасибо.


person Arturo18    schedule 21.05.2013    source источник
comment
У меня возникла аналогичная проблема. Вы нашли здесь какое-нибудь решение?   -  person Abhinav    schedule 27.06.2013


Ответы (2)


Вы уверены, что 180A - это то, что вам нужно?

Если нет, попробуйте:

[mgr scanForPeripheralsWithServices:nil options:[NSDictionary dictionaryWithObject:[NSNumber numberWithBool:NO] forKey:CBCentralManagerScanOptionAllowDuplicatesKey]];
person Aboelseoud    schedule 21.05.2013
comment
Я пробовал все возможные услуги, и я также попытался установить услуги как ноль. Не работает. Я сдаюсь, но спасибо. - person Arturo18; 04.06.2013
comment
Вы проверили это: developer.apple.com/library/ios/#samplecode/BTLE_Transfer/? - person Aboelseoud; 04.06.2013

Ваш код в порядке. Найдите в магазине приложений TI BLE их бесплатное приложение для iPhone.

Если их приложение не может обнаружить ваше устройство Bluetooth, убедитесь, что ваше устройство Bluetooth включено и показывает рекламу.

person Jon    schedule 30.08.2013