颤振:异常:SocketException:仅在 iOS 模拟器上连接失败

时间:2021-05-13 10:16:15

标签: flutter dart ios-simulator flutter-ios flutter-ios-build

当我尝试使用 dart HTTP 模块调用 REST API 时出现以下错误,这种情况在 iOS 模拟器上发生,尝试在 iOS 设备和 Android 模拟器上运行相同的代码,工作正常两个都很好。

这是我记录异常时得到的,

Launching lib/main.dart on iPhone 12 Pro Max in debug mode...
Running Xcode build...
Xcode build done.                                           28.0s
Debug service listening on ws://127.0.0.1:51060/OGZYZc5p7EM=/ws
Syncing files to device iPhone 12 Pro Max...
flutter: Exception : SocketException: Connection failed, address = my.domain.api.net, port = 443

iOS 开发工具:XCode Version 12.5 (12E262)

颤动医生输出:

$ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 2.0.6, on macOS 11.2.3 20D91 darwin-x64, locale en-LK)
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
[✓] Xcode - develop for iOS and macOS
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.2)
[✓] VS Code (version 1.56.1)
[✓] Connected device (3 available)

• No issues found!

尝试在模拟器上使用 Safari 访问我的 API URL,它也工作正常,除了颤振异常之外,我没有收到任何其他信息/日志。

1 个答案:

答案 0 :(得分:0)

我的问题的原因与 Sophos Antivirus 有关系,我已经删除了 Sophos 并且能够解决问题。当我尝试使用 flutter pub get 时,我遇到了类似的套接字异常,但只有一个互联网连接,当我切换到另一个连接时它工作正常,我试图通过删除 flutter pub get 来使 flutter pub get 工作Sophos,它解决了 struct Base { void foo(); }; struct Derived : Base { void foo(); void bar() { Derived::foo(); Base::foo(); } }; 问题和与 iOS 模拟器的连接问题。