【发布时间】:2021-03-31 20:19:32
【问题描述】:
我正在开发一个包含以下功能的项目。
- 每 60 秒获取一次位置并发送到服务器。
- 音频/视频通话。
iOS:14.1 X代码:12.1 斯威夫特:4
问题: 每当我将应用程序置于后台时,它都会获取位置或调用某个时间,然后我会在日志中收到以下错误。每当我在进行音频通话时将应用程序置于后台时,音频会工作一段时间,几秒钟后会出现以下错误。
Message from debugger: Terminated due to signal 9.
当应用程序在前台时,一切都可以正常工作。应用程序获取位置并调用作品。
请建议我还需要做什么或我做错了什么。
【问题讨论】:
-
听起来你正在从 Xcode 运行时进行测试。
-
@matt 是的,正确的。但即使我没有测试它也不起作用。应用正在重新启动。
-
那么你需要看看它为什么会重新启动。听起来您的应用由于某种原因在后台被杀死。
-
@matt 是的,我检查了但无法找到终止的原因。我在 .ips 文件中收到此消息 48 秒 cpu 时间超过 53 秒(平均 91% cpu),超过 80% cpu 超过 60 秒的限制
-
我不知道你想从我这里得到什么。您没有显示任何代码。但是您知道问题的根源(后台 CPU 使用率过多),并且您知道如何探索 CPU 使用率(使用 Instruments)。这只是做工作的问题。
标签: ios swift xcode background-mode