Ho un problema di aggiornamento del mio codice CoreBluetooth da iOS 6 a iOS 7. Posso eseguire la scansione di Periferiche e effettuare connessioni, tuttavia, non sono in grado di riconnettere una Periferiche utilizzando i nuovi metodi CoreBluetooth offerti all'interno di iOS 7. Ecco uno sguardo a come sto cercando di realizzare la riconnessione:iOS 7 CoreBluetooth retrievePeripheralsWithIdentificanti non Recupero
- (void)retrievePeripheral:(NSString *)uuidString
{
NSUUID *nsUUID = [[NSUUID UUID] initWithUUIDString:uuidString];
if(nsUUID)
{
NSArray *peripheralArray = [centralManager retrievePeripheralsWithIdentifiers:@[nsUUID]];
// Check for known Peripherals
if([peripheralArray count] > 0)
{
for(CBPeripheral *peripheral in peripheralArray)
{
NSLog(@"Connecting to Peripheral - %@", peripheral);
[self connectPeripheral:peripheral];
}
}
// There are no known Peripherals so we check for connected Peripherals if any
else
{
CBUUID *cbUUID = [CBUUID UUIDWithNSUUID:nsUUID];
NSArray *connectedPeripheralArray = [centralManager retrieveConnectedPeripheralsWithServices:@[cbUUID]];
// If there are connected Peripherals
if([connectedPeripheralArray count] > 0)
{
for(CBPeripheral *peripheral in connectedPeripheralArray)
{
NSLog(@"Connecting to Peripheral - %@", peripheral);
[self connectPeripheral:peripheral];
}
}
// Else there are no available Peripherals
else
{
// No Dice!
NSLog(@"There are no available Peripherals");
}
}
}
}
Dove uuidString è salvato periferico UUID.
Mi trovo sempre sull'istruzione NSLog dove non sono disponibili periferiche. Suppongo che mi manchi qualcosa di molto ovvio e qualcuno può indicarmi la giusta direzione.
Inoltre, ho letto altri post relativi ai problemi di aggiornamento di iOS 7 con CoreBluetooth e ho provato a resettare il dispositivo BLE e il dispositivo iOS, ma senza alcun risultato.
Grazie in anticipo! udibile
Mi chiedo se potete aiutarmi con il mio codice per convertire in retrievePeripheralsWithIdentifiers - (void) centralManager: (CBCentralManager *) centrale didDiscoverPeripheral: (CBPeripheral *) aPeripheral advertisementData: (NSDictionary *) advertisementData RSSI: (NSNumber *) RSSI { NSMutableArray * peripherals = [self mutableArrayValueForKey: @ "heartRateMonitors"]; se: [periferiche addObject: aPeripheral] ([self.heartRateMonitors containsObject aPeripheral]!); [retrievePeripherals self.manager: [NSArray arrayWithObject: (id) aPeripheral.UUID]]; } –