【发布时间】:2023-03-22 22:35:02
【问题描述】:
我有一个 NSTimer 倒计时并在达到 0 时触发一个方法。但是当我按下 iPhone 上的睡眠按钮时,它会暂停计时器并在我重新唤醒 iPhone 时继续它。
当 iPhone 处于“睡眠”状态时,NSTimer 是否也有可能触发 - 类似于默认 Time-App 中的 Timer-Function?
或者我可以“假装”睡眠模式,让屏幕变暗而计时器继续吗?
谢谢
【问题讨论】:
-
只有三个服务可以在后台运行:
location tracking、VoIP或audio。一般来说,当应用程序进入后台或手机进入睡眠模式时,所有其他线程都会被暂停。* (*这句话没有涵盖所有细节,具体解释请阅读Apple的相关文档。) -
但是,像来自 taptaptap 的 Serenity 这样的应用程序如何添加睡眠计时器(在一定时间后停止播放),如果 iPhone 处于“睡眠状态”,它也会触发?
-
它绝对没有使用任何
NSTimer,因为我上面写的原因但是audio服务可以在后台顺利运行。这是可能的。 -
据我了解,在用户点击通知本身的按钮之前,我无法使用 UILocalNotification 触发方法。这与我的目的无关。