【问题标题】:How do I keep the user's iPhone's display on?如何保持用户 iPhone 的显示屏处于开启状态?
【发布时间】:2011-10-06 21:40:52
【问题描述】:
因此,我一直在寻找一种方法来让用户的 iPhone 显示屏保持打开状态,以用于时钟应用程序。我找到了[UIApplication sharedApplication].idleTimerDisabled = YES;,但这可以防止设备一直锁定。当应用程序进入后台时,我尝试[UIApplication sharedApplication].idleTimerDisabled = NO;,但这不起作用。如何在我的应用运行时安全地防止用户的设备进入睡眠状态?
【问题讨论】:
标签:
iphone
objective-c
ios
xcode
【解决方案1】:
每当您的应用更改其活动状态时更改 idleTimerDisabled 属性 - 如果您要进入后台,请重新启用计时器,当您重新获得控制权时,再次禁用计时器。
【解决方案2】:
这是我的解决方案,使用 XCode 6.2。
iPhone - phone goes to sleep even if idleTimerDisabled is YES
基本上,即使是在 2015 年的现在,安全地确保设备不会进入睡眠状态的唯一方法是重复调用一段代码来保持设备处于唤醒状态。 p>
-(void)callEveryTwentySeconds
{
// DON'T let the device go to sleep during our sync
[[UIApplication sharedApplication] setIdleTimerDisabled:NO];
[[UIApplication sharedApplication] setIdleTimerDisabled:YES];
}