我正在开发一个进行网络通话的Mac应用程序。我正在使用Timer
每15分钟打一次网络电话以刷新一些数据。我只希望在用户使用系统时触发计时器并拨打电话(否则,它只是在拨打不必要的电话),也就是在系统不处于睡眠状态时。我该怎么做?我了解到马赫有一个单调时钟,该时钟仅在系统唤醒时才更新,但是我不确定如何实现我的计时器以按需运行。有没有办法确定系统是否处于唤醒状态?在此先感谢您的帮助。
答案 0 :(得分:1)
NSWorkspace中有4条通知,您可以用来暂停和恢复计时器
didWakeNotification
在机器从睡眠状态唤醒时发布。 willSleepNotification
张贴在机器进入睡眠状态之前。 screensDidSleepNotification
在机器屏幕进入休眠状态时发布。 screensDidWakeNotification
在机器屏幕唤醒时发布。