微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ios – 连接两个BLE外设的流程是什么样的?

我在论坛上一直在阅读很多帖子,我看到了很多与我的案例相关的帖子.但是我仍然没有找到我想要的清晰度.

我想连接两个CBperipherals并将数据写入它们.根据我的阅读,我认为在连接第二个设备之前,我必须断开当前的外围设备.好吧,假设我要将一个命令写入其中一个外设,然后我想将另一个命令写入另一个外设,我是否必须断开与当前外设的连接?如果我断开连接到另一个,前一个命令是否仍然有效? 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对象表示),包括扫描,发现和连接到广告外围设备.

您可以立即连接某些设备并向其发送消息,一切正常.
如果您有疑问,请尽量回答.

这是一个很好的例子,你可以看到它的工作原理:https://github.com/ruiking/ble

关于设备的最大数量https://stackoverflow.com/a/17282862/4912496

原文地址:https://www.jb51.cc/iOS/331452.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐