Ios 连接两个可编程外围设备的流程是什么样的?
我在论坛上读了很多帖子,看到了很多与我的案例相关的帖子。然而,我仍然没有我想要的清晰Ios 连接两个可编程外围设备的流程是什么样的?,ios,swift,core-bluetooth,Ios,Swift,Core Bluetooth,我在论坛上读了很多帖子,看到了很多与我的案例相关的帖子。然而,我仍然没有我想要的清晰 我想连接到两个cb外围设备,并向这两个设备写入数据。根据我所读到的,我的想法是,在连接到第二个设备之前,我必须断开当前外围设备的连接。好的,假设我要在一个外设上写一个命令,然后我想在另一个外设上写另一个命令,我必须断开与当前外设的连接吗?如果我断开连接以连接到另一个,上一个命令仍然有效吗?iOS上的最佳实践是什么 我的蓝牙朋友,首先,如果你想同时发送两条信息,不需要断开当前外设的连接。但许多应用程序将连接设备(
我想连接到两个
cb外围设备
,并向这两个设备写入数据。根据我所读到的,我的想法是,在连接到第二个设备之前,我必须断开当前外围设备的连接。好的,假设我要在一个外设上写一个命令,然后我想在另一个外设上写另一个命令,我必须断开与当前外设的连接吗?如果我断开连接以连接到另一个,上一个命令仍然有效吗?iOS上的最佳实践是什么 我的蓝牙朋友,首先,如果你想同时发送两条信息,不需要断开当前外设的连接。但许多应用程序将连接设备(CBPeripheral)的数量限制在5-10个,因为超过5-10个连接设备可能会自动丢失,对此我知道得很少(我只使用了4个设备)。例如:
[[RKCentralManager sharedManager] scanForPeripheralsWithServices:nil options:@{CBCentralManagerScanOptionAllowDuplicatesKey:@NO} onUpdated:^(RKPeripheral *peripheral)
{
//first of all u should start a scan
[[RKCentralManager sharedManager] connectPeripheral: peripheral options:nil onFinished:^(RKPeripheral * connectedperipheral, NSError *error)
{
//after u can connect to Peripheral immediately
[connectedperipheral discoverServices:nil onFinish:^(NSError *error)
{
// services - a collection of data and associated behaviors for accomplishing a function or feature of a device
[connectedperipheral discoverCharacteristics:nil forService: [connectedperipheral.services lastObject] onFinish:^(CBService *service, NSError *error)
{
//after u should take a characteristic - Represents a service's characteristic
CBCharacteristic * characteristic = service.characteristics[0];
//and at last u can write value in characteristic in which you are going to write down something
NSData * data = [NSData dataWithHexString: newstring];
CBCharacteristicWriteType type = CBCharacteristicWriteWithoutResponse;
[connectedperipheral writeValue:data forCharacteristic:characteristic type:type onFinish:nil];
}];
}];
}];
}];
蓝牙设备发送消息的近似方案,不必进行方法投资,它们可以在操作上分发
您不应该担心连接和发送数据
如果您正确使用CBCentralManager,它将适用于多个设备
CBCentralManager对象用于管理发现的或连接的远程外围设备(由CBPeripheral对象表示),包括扫描、发现和连接到广告外围设备。
您可以立即连接一些设备并向它们发送消息,然后一切正常。
如果你有问题,我会尽力回答
这是一个很好的例子,你可以看到它是如何工作的:
关于设备的最大数量我同时使用了两台BLE设备,因此您不必断开任何一台设备的连接谢谢兄弟!不过我不希望使用这个库,因为它会为应用程序添加另一层。一定有办法使用本机函数进行管理,对吗?@Jobs这不是一个库,它只是一个项目,可以承担一些决策,我祝你好运,因为这真的很难,很少有人参与。哦,好吧,让我更深入地探讨一下!一旦你掌握了窍门,BLE就是小菜一碟。在那之前,干杯!如果我遇到任何我不能解决的问题,我会打电话给你。@JoeHallenbeck嘿Joe,你有没有关于如何在Swift中处理两个BLE外围设备的例子?