gpt4 book ai didi

ios - 同时连接到多个 BLE 设备 iOS

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:59:46 28 4
gpt4 key购买 nike

我正在尝试扫描附近所有可用的 BLE 设备并与每个设备建立连接,以便我可以持续获取 RSSI 值。

这是我的代码:

- (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral
advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI {
NSLog(@"Received peripheral : \n%@", peripheral);
myPeripheral=peripheral;
NSLog(@"RSSI value:%@",RSSI);

[myCentralManager connectPeripheral:peripheral options:nil];
peripheral.delegate=self;

}

-(void)centralManager:(CBCentralManager *)central didConnectPeripheral:(CBPeripheral *)peripheral{
//NSLog(@"Peripheral Connected");
NSLog(@"%@ connected",peripheral.identifier);
}

谁能指导我如何与多个外围设备建立连接?谢谢

最佳答案

这是你可以这样做的方法:

第 1 步:停止扫描。这有助于加快连接速度。

[self.centralManager stopScan];

第 2 步:扫描外围设备。

[self.centralManager scanForPeripheralsWithServices:nil options:nil];

第 3 步:将所有发现的外围设备保存在委托(delegate)回调方法下方。

centralManager:didDiscoverPeripheral:advertisementData:RSSI:

第 2.1 步: 我称此为 2.1,因为这将在第 2 步之后立即执行。使用 GCD,在延迟 2-5 秒后分派(dispatch)线程(用户 dispatch_after) 并循环保存的 Per 并调用 connectPeripheral:options: 方法连接到它们。

关于ios - 同时连接到多个 BLE 设备 iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32708546/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com