小编Joh*_*n_S的帖子

“BackgroundModes” - 系统功能未列在 iOS 项目的“project.pbxproj”文件中

我正在尝试Background fetch使用 Workmanager 插件将该功能集成到 Flutter 项目中。因此,我background fetch在 iOS 项目功能的“后台模式”下启用了该功能。但以下块未添加到project.pbxproj文件中。据我了解,它应该是由XCode自动添加的。

SystemCapabilities = {
                            com.apple.BackgroundModes = {
                                enabled = 1;
                            };
                        };
Run Code Online (Sandbox Code Playgroud)

目前,我正在使用 Xcode 11.3.1 和 Swift 5.0。那么如何将上面的代码片段引入到project.pbxproj 文件中呢?或者如果我的理解有误,请帮助我。

xcode ios flutter

7
推荐指数
0
解决办法
730
查看次数

在 Android 12+ 中,REST API 调用在 flutter 中非常慢,在 WiFi 中需要 10 秒,而在移动数据中则不到一秒

我遇到了 Flutter Android 12+ 版本的问题。使用 Flutter http 插件(版本:0.13.5)进行应用程序消费 REST API 调用。所有API调用都是带有域名的HTTPS服务调用。API 调用需要 10 多秒才能提供响应,而相同的 API 调用在移动数据网络中只需要不到一秒。我尝试使用 Java Client 和 Postman 进行相同的 API 调用,所有响应仅花费不到一秒的时间就得到响应。

\n

在故障排除过程中,我使用Wifi网络测试了以下场景

\n
    \n
  1. 我使用 IP 地址而不是域执行 API 服务调用,只花了不到一秒的时间(HTTP 插件中禁用了 SSL 验证)
  2. \n
  3. 使用连接 keep-alive: true 测试 API 调用,然后第一次调用花费了 10+ 秒,之后后续调用只花费了不到一秒
  4. \n
  5. 一个有趣的事实是,我仅在 Android 12+ 中遇到了问题,Android 11 设备在 WiFi 网络上运行,并且服务呼叫花费了不到一秒的时间。
  6. \n
\n

现在我明白基于 Wifi 的 API 调用总是需要 10 秒 + 实际服务调用时间(例如 400 毫秒,因此相当于 10.400 秒)。

\n

这个问题有什么具体原因吗?

\n
flutter doctor -v\n[\xe2\x88\x9a] Flutter (Channel stable, 3.3.6, on Microsoft …
Run Code Online (Sandbox Code Playgroud)

android flutter flutter-http

6
推荐指数
1
解决办法
1387
查看次数

标签 统计

flutter ×2

android ×1

flutter-http ×1

ios ×1

xcode ×1