我有一个应用程序,如果它有前台,它可能会从硬件附件接收定期更新。该硬件配件上有一个物理硬件按钮。用户认为这是“与设备的交互”(在这种情况下是 iPhone 或 iPad 触摸),我希望按下这些硬件按钮来重置 UIApplication 内的计数器或计时器机制,这样它就不会在用户时立即进入睡眠状态正在积极使用该应用程序。
我怎么做?目前我只能完全禁用定时器,然后从一些内部辅助定时器重新启用它。所有这些计时器到计时器的东西似乎都很愚蠢。
我正在寻找类似的方法
[UIApplication userDidSomethingSoPleaseDontGoToSleepYouSillyThing];
现在,如果我的应用程序禁用空闲计时器然后忘记重新启用它,用户的设备只会耗尽电池并关闭。这对于电池寿命测试很有用,但可能会让最终用户感到不安。我宁愿不碰这个 idleTimerDisabled 并简单地告诉应用程序保持清醒至少一段时间,然后如果用户再次按下按钮,告诉 UIApplication 再次重置其内部计时器。