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就可以了。

相关推荐
Yan-英杰13 小时前
BoostKit OmniAdaptor 源码深度解析
网络·人工智能·网络协议·tcp/ip·http
火柴就是我14 小时前
学习一些常用的混合模式之BlendMode. dst_atop
android·flutter
火柴就是我14 小时前
学习一些常用的混合模式之BlendMode. dstIn
android·flutter
LaoZhangGong12316 小时前
学习TCP/IP的第1步:ARP数据包
网络·stm32·学习·tcp/ip·以太网·arp·uip
火柴就是我17 小时前
学习一些常用的混合模式之BlendMode. dst
android·flutter
前端不太难17 小时前
Sliver 为什么能天然缩小 rebuild 影响面
flutter·性能优化·状态模式
LaoZhangGong12317 小时前
学习TCP/IP的第2步:ICMP数据包
网络·网络协议·学习·tcp/ip·以太网
上海云盾安全满满17 小时前
高防IP如何实现为数藏精准防刷策略
网络·tcp/ip·安全
带带弟弟学爬虫__18 小时前
Flutter 逆向想学却无从下手?
flutter