use*_*438 13 objective-c core-bluetooth ios6 cbperipheral
我正在尝试连接蓝牙BTLE设备.我发现外设没有问题.
但是,当我尝试连接到外围设备时,我收到了以下警告.
2013-04-05 22:10:36.110 CoreBluetooth [警告] 7DA9E322-D710-081B-4A9D-526DE546B13C,名称="Find My Car Smarter",IsConnected = NO>在连接时被解除分类
此外,没有相关的委托方法被调用:
didConnectPeripheral:
didFailToConnectPeripheral:
Run Code Online (Sandbox Code Playgroud)
几个小时我一直在努力...请帮助.
sar*_*ata 37
简短回答:您需要保留外围设备.
详细解释:核心蓝牙在发现时不知道您是否对此外围设备感兴趣.连接到它是不够的,你需要保留它.
将属性添加到您正在执行所有操作的类中:
@property (strong) CBPeripheral *connectingPeripheral;
Run Code Online (Sandbox Code Playgroud)
然后在发现设备时将外围设备分配给此属性,然后再返回didDiscoverPeripheral:
- (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI
{
DDLogVerbose(@"Discovered peripheral: %@ advertisement %@ RSSI: %@", [peripheral description], [advertisementData description], [RSSI description]);
[central connectPeripheral:peripheral options:nil];
self.connectingPeripheral = peripheral;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5659 次 |
| 最近记录: |