Flutter通过 Coap发送组播

Flutter发送组播的流程

1.初始化 CoAP 客户端

需要初始化 CoAP 客户端并将其连接到组播地址和端口。您可以使用 CoAP 库提供的类来创建和配置客户端

复制代码
final client = CoapClient(
    Uri.parse('coap://224.0.1.1:5683'), // 组播地址和端口
);

2.创建 CoAP 请求

创建一个 CoAP 请求,设置请求类型(例如 GET、POST、PUT 等)、请求路径以及任何负载或选项

复制代码
CoapRequest request = CoapRequest.newGet();

 // request.addUriPath('/auth/test/$ACCESS_TOKEN/rpc'); // 设置资源路径

request.payloadString = 'Hello, CoAP Multicast!'; // 设置负载

3.发送请求

一旦请求准备就绪,您就可以使用 CoAP 客户端发送请求。发送请求后,等待服务端的响应

复制代码
var responses = client.sendMulticast(request);

4.处理响应

如果收到了响应,您可以从响应中提取数据并对其进行处理,例如显示在用户界面上或执行其他操作。如果未收到响应,您可以处理超时或其他错误情况

复制代码
await for (final response in responses) {

     print(response.payloadString);        

}

5.关闭连接

完成通信后,关闭 CoAP 客户端的连接,释放资源并确保网络资源的正常释放

复制代码
client.close();

6.全部代码

复制代码
TextButton(

     onPressed: () async {

       final client = CoapClient(

         Uri.parse('coap://224.0.1.1:5683'), // 组播地址和端口

       );

       try {

         CoapRequest request = CoapRequest.newGet();

         // 设置请求路径和负载

         // request.addUriPath('/auth/test/$ACCESS_TOKEN/rpc'); // 设置资源路径

         request.payloadString = 'Hello, CoAP Multicast!'; // 设置负载

         var responses = client.sendMulticast(request);

         await for (final response in responses) {

           print(response.payloadString);

         }

       } on Exception catch (e) {

         print('CoAP encountered an exception: $e');

       }



       client.close();

     },

     child: Text("发送组播")

),

测试数据是否发生成功

1.使用SockerTool软件进行测试

解压\\nas.nonagon\01-办公及开发软件\07-硬件开发工具\03-串口 USB CAN 网络 蓝牙调试助手\sockettool.rar,然后打开SocketTool V4.exe

2.创建组播服务

选中UDP Group后点击创建按钮,填写上上面代码中的组播地址和端口

3.测试

手机上发送内容,查看这里能否接收到,能接收到则代表成功

相关推荐
初遇你时动了情6 小时前
uniapp/flutter中实现苹果IOS 26 毛玻璃效果、跟随滑动放大动画
flutter·ios·uni-app
listhi52010 小时前
Vue.js 3的组合式API
android·vue.js·flutter
起风了___10 小时前
Flutter 多端音频控制台:基于 audio_service 实现 iOS、Android 锁屏与通知中心播放控制
前端·flutter
leinchu13 小时前
Flutter + Codebuddy的坑
flutter
安卓开发者15 小时前
第4讲:理解Flutter的灵魂 - “Everything is a Widget”
开发语言·javascript·flutter
起风了___15 小时前
Flutter 全局音频播放单例实现(附完整源码)——基于 just_audio 的零依赖方案
前端·flutter
DreamMachine15 小时前
Flutter 开发的极简风格音乐播放器
前端·flutter
星释1 天前
鸿蒙Flutter三方库适配指南:08.联合插件开发
flutter·华为·harmonyos
星释1 天前
鸿蒙Flutter三方库适配指南:06.插件适配原理
flutter·华为·harmonyos
小蜜蜂嗡嗡1 天前
【flutter报错:Build failed due to use of deprecated Android v1 embedding.】
android·flutter·embedding