我正在使用performSelector调度选择器:withObject:afterDelay:延迟五分钟。如果设备在预定的情况下进入休眠状态超过五分钟,则会发生以下两种情况之一:
1)如果设备连接到我的笔记本电脑,并且应用程序正在调试器中运行,那么当应用程序唤醒时,选择器会立即触发。似乎"时钟一直在运行"为了延迟。
2)如果设备未连接,则选择器触发前会有一段延迟。似乎"时钟暂停"对于延迟选择器。
根据设备是否连接到调试器,会出现两种不同的行为,这似乎很奇怪。有什么想法吗?
答案 0 :(得分:0)
我注意到调试器似乎强制应用程序在后台运行。
通常,如果您在真实设备上进行调试并按下主页按钮,即使在10分钟后也不会发生任何特殊情况。
另一方面,如果您强制终止设备上的应用程序,您将最终收到SIGKILL信号,该信号将终止您的调试会话。
答案 1 :(得分:0)
应用程序在后台暂停。您通常应该在applicationDidEnterBackground
中保存计时器等,然后在applicationDidBecomeActive
中重新启动它们。