【问题标题】:Flutter - Socket.Connect() - SocketException: OS Error: Connection timed outFlutter - Socket.Connect() - SocketException:操作系统错误:连接超时
【发布时间】:2021-04-18 23:57:38
【问题描述】:

当我使用我的设备(真实)进行调试模式(使用“flutter run”)时,Socket.Connect() 方法不起作用。

另外我想说的是,这个 Connect 方法在“dart:io”库中。

很快;

  • 我用 Python 打开了一个服务器 (TCP)。

  • 我编写了如下所示的 Flutter 客户端,以便能够使用 Python 连接到服务器。

    未来 den() 异步 { 打印(“开始”); 套接字 sock = 等待 Socket.connect("192.168.0.159", 5431); print("完成 +++++++++++++++++++++++++++"); }

但是,我将 SocketError 作为连接超时。

我收到的错误信息:

E/flutter (17655): [ERROR:flutter/lib/ui/ui_dart_state.cc(177)] Unhandled Exception: SocketException: OS Error: Connection timed out, errno = 110, address = 192.168.0.159, port = 43836

注意: 我尝试通过添加 INTERNET 权限来更改清单文件,但它不起作用。

【问题讨论】:

    标签: flutter sockets dart tcp


    【解决方案1】:

    这是一个奇怪的问题,因为我分享的代码没有问题。 Windows Defender 执行了一个规则来阻止打开一个端口作为服务器。因此,我在我的机器上启动了服务器,但是我无法从我的 Android 设备连接它。

    可能是 Flutter 显示的错误码不清晰。如果您在连接或绑定的套接字编程方面出现错误,请查看 Defender(或防火墙)可能是有效的方法。不幸的是,当我刚开始学习 Flutter 时,我想在之后检查一下 Defender。

    【讨论】:

      猜你喜欢
      • 2018-10-26
      • 2020-09-03
      • 2019-08-19
      • 2020-01-07
      • 1970-01-01
      • 1970-01-01
      • 2020-06-07
      • 2020-07-14
      • 2021-04-15
      相关资源
      最近更新 更多