How do I prevent the iPhone screen from dimming or turning off while my application is running?

我正在开发一个不需要用户输入的应用程序,但我不希望 iPhone 进入节能模式。

有没有可能禁用应用程序的节能功能?

27389 次浏览

目标 C

[[UIApplication sharedApplication] setIdleTimerDisabled:YES];

斯威夫特

UIApplication.shared.isIdleTimerDisabled = true

迅速中,您可以使用它作为

UIApplication.sharedApplication().idleTimerDisabled = true

我已经把这行代码放在我的视图控制器,但我们仍然得到客户说,屏幕会变暗或关闭,直到有人触摸屏幕。我看到过其他的帖子,不仅仅是通过编程设置

UIApplication.sharedApplication().idleTimerDisabled = true

但你必须先把它重置为假

UIApplication.sharedApplication().idleTimerDisabled = false
UIApplication.sharedApplication().idleTimerDisabled = true

遗憾的是,这仍然没有奏效,客户仍然得到暗淡的屏幕。我们有 Apple Configurator 配置文件来防止设备进入睡眠状态,但是仍然有一些设备的屏幕会变暗,用户需要按 Home 键来唤醒屏幕。现在,我将这段代码放入一个定时器中,该定时器每2.5小时触发一次,以重新设置空闲定时器,希望这能起作用。

我们也有同样的问题。结果是我们的 MDM 服务器上的一个流氓进程,它在我们的帐户中被删除,但是服务器上仍然发送命令来调暗我们的设备。

斯威夫特3:

UIApplication.shared.isIdleTimerDisabled = true