首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iOS6: CBPeripheral在连接时被取消分配

iOS6: CBPeripheral在连接时被取消分配
EN

Stack Overflow用户
提问于 2013-04-06 03:18:51
回答 1查看 5.8K关注 0票数 13

我想连接到蓝牙BTLE设备。我发现外设没问题。

但是,当我试图连接到外围设备时,我收到了以下警告。

2013-04-05 22:10:36.110 CoreBluetoothWARNING 7DA9E322-D710-081B-4A9D-526DE546B13C,名称=“查找我的汽车智能车”,IsConnected = NO>连接时正在取消分配

此外,没有一种相关的委托方法被称为:

代码语言:javascript
复制
didConnectPeripheral:
didFailToConnectPeripheral:

我挣扎了好几个小时..。请帮帮忙。

EN

回答 1

Stack Overflow用户

发布于 2013-04-07 13:31:14

简短的回答:你需要保留外围。

长说明:核心蓝牙不知道你是否对这个外围设备感兴趣,当它被发现。连接到它是不够的,你需要保留它。

将属性添加到您要执行的所有操作的类中:

代码语言:javascript
复制
@property (strong) CBPeripheral     *connectingPeripheral;

然后,当设备被发现时,在您从didDiscoverPeripheral返回之前,将外围设备分配给此属性。

代码语言:javascript
复制
- (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;
}
票数 38
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15846663

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档