Objective c didDiscoverServices未调用
我们尝试将蓝牙设备的数据读取到iphone。我们将此流程化Objective c didDiscoverServices未调用,objective-c,bluetooth-lowenergy,core-bluetooth,ios-bluetooth,bluetooth-peripheral,Objective C,Bluetooth Lowenergy,Core Bluetooth,Ios Bluetooth,Bluetooth Peripheral,我们尝试将蓝牙设备的数据读取到iphone。我们将此流程化 。我们获得了设备名称、设备uuid号和连接。但我们未能获得数据。请指导我们 -(void) centralManager:(CBCentralManager *)central didConnectPeripheral:(CBPeripheral *)peripheral { self.connectedPeripheral=peripheral; NSLog(@"Connected to %@(
。我们获得了设备名称、设备uuid号和连接。但我们未能获得数据。请指导我们
-(void) centralManager:(CBCentralManager *)central didConnectPeripheral:(CBPeripheral *)peripheral {
self.connectedPeripheral=peripheral;
NSLog(@"Connected to %@(%@)",peripheral.name,peripheral.identifier.UUIDString);
peripheral.delegate=self;
NSLog(@"DeviceInfoUUID %@",_deviceInfoUUID);
[peripheral discoverServices:@[self.deviceInfoUUID]];
//we tried this also
// [peripheral discoverServices:nil];
}
#pragma mark - CBPeripheralManager delegate methods
-(void) peripheral:(CBPeripheral *)peripheral didDiscoverServices:(NSError *)error {
NSLog(@"peripheral.services %@",peripheral.services);
for (CBService *service in peripheral.services) {
NSLog(@"Discovered service %@",service.description);
if ([service.UUID isEqual:self.deviceInfoUUID]) {
[peripheral discoverCharacteristics:nil forService:service];
}
}
}
请告诉我们代码中的错误。我们是新的此您是否扫描了带有服务的外围设备,代码如下:
NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], CBCentralManagerScanOptionAllowDuplicatesKey, nil];
[self.bluetoothManager scanForPeripheralsWithServices:nil options:options];
外设是否具有UUID
self.DeviceInfo-UUID
的服务?它会宣传吗?@Larme当我们打印设备信息“设备信息”only@Larme我们尝试了[外围discoverServices:nil];同样但没有luckAs@Larme说,你的设备广告是什么服务?您是否尝试过app store中的LightBlue Explorer应用程序?LightBlue Explorer是查看设备广告的一种好方法。如果无法连接,则您的设备可能有问题