当前位置: 首页 > news >正文

临高县网站建设_网站建设公司_Bootstrap_seo优化

三网合一网站报价,怎么通过网站打广告,网站建设参考文献目录,WordPress到底有什么好文章目录 1. 概念介绍2. 具体细节2.1 发现服务2.2 发现特征值2.3 发送数据2.4 接收数据 3. 代码与效果3.13.2 运行效果 4. 经验总结 我们在上一章回中介绍了连接蓝牙设备的细节相关的内容#xff0c;本章回中将介绍通过蓝牙发送数据的细节.闲话休提#xff0c;让… 文章目录 1. 概念介绍2. 具体细节2.1 发现服务2.2 发现特征值2.3 发送数据2.4 接收数据 3. 代码与效果3.13.2 运行效果 4. 经验总结 我们在上一章回中介绍了连接蓝牙设备的细节相关的内容本章回中将介绍通过蓝牙发送数据的细节.闲话休提让我们一起Talk Flutter吧。 1. 概念介绍 我们在本章回中介绍的通过蓝牙设备发送数据仍然使用flutter_blue_plus包提供的接口我们在第一百一十九回章回中介过通过蓝牙发送数据的方法不过还有一些 细节问题需要注意本章回中将详细介绍通过蓝牙发送数据的细节内容。 2. 具体细节 通过蓝牙发送数据的细节主要包含发现服务(BluetoothService)和特征值(Characteristic)发送数据和接收数据。我们把这些内容分成各个小节来介绍。 2.1 发现服务 发现服务使用包中的discoverServices()方法就可以不过蓝牙设备的服务比较多需要进行遍历操作在遍历过程中找到需要操作的服务通常是通过服务的uuid 来判断服务是否是我们需要操作的某个服务。此外蓝牙设备的服务具有读写特性也可以依据读写特性来区分服务。 2.2 发现特征值 发现特征值不需要专门的方法通过服务的characteristics属性就可以获取到该服务的特征值该属性是一个列表包含服务中的多个特征值。我们需要对特征值列表 进行遍历操作在遍历过程中找到需要操作的特征值通常是通过特征值的uuid来判断特征值是否是我们需要操作的某个特征值。此外蓝牙设备的特征值类似服务也 具有读写特性也可以依据读写特性来区分不同的特征值。 2.3 发送数据 2.4 接收数据 通过蓝牙设备读写数据有两种方法一种是读写Characteristics另外一种是读写Descriptor.我们在本章回中介绍的读写数据本质上是读写Characteristics。 flutter_blue_plus包提供了相关的接口去读写Characteristics本章回中将介绍如何使用这些接口去读写数据。 获取服务,通过包中的discoverServices()方法来获取服务通过服务的characteristics属性获取characteristics使用characteristics中的read()和write()方法来读写数据使用characteristics中的onValueReceived属性监听读写结果该属性是Stream类型和蓝牙连接状态的监听方法一样 3. 代码与效果 3.1 上面小节中介绍的实现方法比较抽象接下来我们通过具体的代码来演示如何给蓝牙设备读写数据 FutureListBluetoothService discoverServices(BluetoothDevice device) async {ListBluetoothService services await device.discoverServices();ListBluetoothCharacteristic characteristics;StreamListint readValueChanged;StreamListint writeValueChanged;for (var element in services) {// log.i(service: ${element.toString()});characteristics element.characteristics;for(var char in characteristics) {if(char.properties.read) {readValueChanged char.onValueReceived;readValueChanged.listen((event) {log.i(read chara feedback: ${event.toString()});});readCharacteristics(char);}if(char.properties.write) {writeValueChanged char.onValueReceived;writeValueChanged.listen((event) {log.i(write chara feedback: ${getNiceHexArray(event)});},onError:(e){log.i(write chara error: ${e.toString()});},onDone: () log.i(write chara done),);writeCharacteristics(char);}}}return services;}///依据指定的UUID读取特征值void readCharacteristics (BluetoothCharacteristic characteristic) async{if(PrivateKey.searchServiceUuid ! characteristic.characteristicUuid.toString()) {return null;}Listint value await characteristic.read();log.w(read characteristic: ${value.toString()});}///依据指定的UUID写入特征值void writeCharacteristics (BluetoothCharacteristic characteristic) async{if(PrivateKey.writeCharacteristicUuid ! characteristic.characteristicUuid.toString()) {return null;}Listint value [12,13,14];await characteristic.write(value,withoutResponse: false);log.w(write characteristic: ${value.toString()});}3.2 运行效果 上面示例代码中把读写操作封装成了独立的方法这样可以降低代码的耦合性。同时还指定了characteristic的uuid。这样可以对特定uuid的characteristic进 行读写操作。 我们还在代码中监听了读写操作的结果以便我们了解读写操作的情况。不过 写操作的write方法可以通过withoutResponse属性来控制是否返回结果 该属性的默认值是false表示写操作有返回结果。 4. 经验总结 Service,Characteristic和Descriptor都是蓝牙设备的属性而且每个蓝牙都有这些属性Service,Characteristic和Descriptor环环相扣:获取到Service后才能获取Characteristic,获取到Characteristic后才能获取Descriptor;一个蓝牙设备可能会有多个service我们可以通过它的uuid来区分不同的service;一个serice可能会有多个characteristic,我们可以通过它的uuid来区分不同的characteristic;一个characteristic可以具备读写属性中的任意一种或者二种属性都具备 分享完这些经验后我们回头再看看代码中的各种for循环和if条件判断语句它们都是为了遍历多个值. 看官们与通过蓝牙发送数据的细节相关的内容就介绍到这里欢迎大家在评论区交流与讨论!
http://www.ihoyoo.com/news/57949.html

相关文章:

  • 男女直接做免费的网站网站如何优化排名软件
  • 三亚网站建设品牌网站开发在线浏览pdf
  • 哪个网站可以接加工单wordpress登陆地址修改密码
  • 上海龙元建设网站网站接入服务提供商
  • 建站哪家技术好拿别的公司名字做网站
  • 如需郑州网站建设网站开发技术标准
  • 新网站注册吉林省建设项目招标网站
  • 怎么做html5网站2024年即将上市的手机
  • 网站建设一条龙全包嘉定建站公司
  • 团购网站做摄影牛天下网站做的怎么样
  • wordpress漫画网站建平台需要投资多少钱
  • 太原seo推广自己建个网站做优化
  • 绵阳建网站网络策划主要做什么
  • 商丘网站seo做企业展示版网站贵吗
  • 陕西住房建设厅考试官方网站做网站的背景像素
  • 网站维护 关站 seowordpress上传空间
  • 网站项目案例建设银行的网站为什么登不上
  • 湛江模板建站软件网站开发需要提供哪些资料
  • 网站开发工资高么开发小程序平台
  • 广西建设厅网站行业网推销
  • 公司网站上传不了图片东昌府网站建设公司
  • 网站开发有哪些类型深圳龙岗网站建设培训学校
  • 网站建设公司费用专业团队英文
  • 网站空间国外那个好谷歌浏览器直接打开
  • 海城做网站一个女装店网站建设的策划模板
  • 城乡建设部统计信息网站关于医院网站建设的通知
  • 网站建设我们的优势html简单网页代码烟花
  • 优是是什么网站中山模板建站公司
  • 昆明做网站需要多少钱网站打开速度优化
  • 如何做网站方案大良营销网站建设案例