kos*_*cki 13 permissions http flutter flutter-desktop
我开始将我的 Flutter 应用程序移植到macos Desktop。用户界面开始很好。但是,一旦应用程序进行网络调用,它就会立即失败并显示Connection failed (OS Error: Operation not allowed)。
运行单行:
final response = await http.get('https://jsonplaceholder.typicode.com/posts/1');
Run Code Online (Sandbox Code Playgroud)
失败:
Unhandled Exception: SocketException: Connection failed (OS Error:
Operation not permitted, errno = 1),
address = jsonplaceholder.typicode.com, port = 443
#0 IOClient.send (package:http/src/io_client.dart:33:23)
Run Code Online (Sandbox Code Playgroud)
macos 构建目标来自此处的Google 示例。
Flutter (Channel master, v1.9.8-pre.108)
kos*_*cki 23
您的 macOS XCode 项目缺少名为“传出连接(客户端)”的Internet 权限。
打开你的 macos xcode 项目 - [root]/macos/Runner.xcworkspace
单击项目导航器中的“Runner” - 将显示常规设置。从选项卡栏中选择“功能”并勾选选项“传出连接(客户端)”。
在 XCode 中重建您的应用程序并启动项目。
smo*_*gan 19
按我对对方的回答评论,你应该不使用Xcode的功能,UI这一点。它不会正确处理 Flutter 项目中的两个单独的权利文件。
您需要添加:
<key>com.apple.security.network.client</key>
<true/>
Run Code Online (Sandbox Code Playgroud)
到macos/Runner/DebugProfile.entitlements和macos/Runner/Release.entitlements。
这在此处记录。
| 归档时间: |
|
| 查看次数: |
3949 次 |
| 最近记录: |