将消息写入didDiscoverCharacteristicsFor之外的蓝牙设备

问题描述

我是蓝牙核心的初学者。

我尝试向设备发送消息以更改其led颜色,首先我在diddiscovercharacteristicsFor上进行了尝试,并且效果很好

  func peripheral(_ peripheral: CBPeripheral,diddiscovercharacteristicsFor service: CBService,error: Error?) {
  guard let characteristics = service.characteristics else { return }
  self.writeCharacteristic = characteristics.first
  self.mdDevice = peripheral
  
  var color = "04ffffff".hexa
  let data = NSData(bytes: &color,length: 4)
  self.mdDevice.writeValue(data as Data,for: self.writeCharacteristic!,type: .withResponse)

然后,我尝试添加一个通过按钮调用它的函数,但是它不起作用

func changeColor() {
   var color = "04ffffff".hexa
     let data = NSData(bytes: &color,length: 4)
     self?.mdDevice.writeValue(data as Data,for: self?.writeCharacteristic!,type: .withResponse)
}

我的问题是,有可能在diddiscovercharacteristicsFor之外写东西,这是怎么了?非常感谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)