Flutter TCP通信

启动TCP服务

Dart 复制代码
  Future<void> startServer() async {
    final server = await ServerSocket.bind(InternetAddress.anyIPv4, 12345);
    print('Server listening on ${server.address}:${server.port}');

    server.listen((Socket socket) {
      print('Client connected: ${socket.remoteAddress.address}');

      socket.listen(
            (data) {
          final message = String.fromCharCodes(data);
          print('Received: $message');
          socket.write('Echo: $message');
        },
        onDone: () => print('Client disconnected'),
      );
    });
  }

连接TCP服务

Dart 复制代码
    try {
      final socket = await Socket.connect(ip, 12345/*, timeout: Duration(seconds: 3)*/);
      print('Connected to server');

      socket.listen(
        (data) {
          print('Server response: ${String.fromCharCodes(data)}');
        },
        onDone: () => socket.destroy(),
      );
      print("send message");
      _socket = socket;
      socket.write('Hello from Flutter client!');

    } catch (e) {
      print('Error: $e');
    }

很简单个功能,居然遇上问题了:iOS启动服务异常,作为客户端连接其他服务也不行,折腾了两天发现,是因为设置的系统版本低于iOS13.0,在Xcode中把 Minimum Deployments 改成13.0就可以了。

相关推荐
Zelman17 小时前
TCP 协议
网络协议·tcp/ip
life码农19 小时前
Nginx 配置允许指定 IP 段访问:从 192.168.1.1 到 192.168.1.124 及 /24 详解
网络·tcp/ip·nginx
m0_7381858219 小时前
Flutter 鸿蒙化实战:flutter_scankit 适配 OpenHarmony,华为 ScanKit 扫码
flutter·华为·harmonyos·鸿蒙
我就是不信20 小时前
TCP 原理详解:从三次握手到拥塞控制
网络·网络协议·tcp/ip
我就是不信21 小时前
TCP/IP 网络编程:从入门到实战
网络·网络协议·tcp/ip
吴声子夜歌1 天前
Nginx应用与运维——Nginx代理服务应用实战(TCP/UDP代理)
运维·tcp/ip·nginx
Fcy6481 天前
Linux下 传输层协议TCP详解
linux·网络·tcp/ip
别动我齐刘海1 天前
简历技术栈全面复习总结
c++·人工智能·深度学习·学习·tcp/ip·算法·rpc
我就是不信1 天前
TCP 套接字中的 I/O 缓冲:原理、机制与调优实践
网络·tcp/ip·php
wdfk_prog1 天前
Wi-Fi Direct 源码分析(11):P2P-GROUP-STARTED 之后——Group Interface、IP 配置与真实数据通路
运维·服务器·网络协议·tcp/ip·asp.net·p2p·wifi-direct