iOS - setIdleTimerDisabled:NO 不工作

问题描述 投票:0回答:3

我有一个利用摄像机的应用程序,因此屏幕不会变暗。禁止屏幕变暗效果很好,如下所示:

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    [[UIApplication sharedApplication] setIdleTimerDisabled:YES];
}

但是当应用程序关闭并进入后台时,将 IdleTimer 设置回 NO 不起作用。屏幕在主屏幕上永远保持打开状态。这就是我努力实现这一目标的方式。

- (void)applicationWillResignActive:(UIApplication *)application
{
    [[UIApplication sharedApplication] setIdleTimerDisabled:NO];
}

有更好的地方添加这行代码吗?

iphone ios uiapplicationdelegate
3个回答
16
投票

同样的问题也发生在我身上。实际上它确实有效,但仅在您的设备未连接到 Xcode 时有效。尝试断开设备连接,然后测试此功能。


0
投票

为什么不尝试在

applicationWillEnterForeground
委托方法中使用你的代码。


-1
投票

Swift 版本:

public func applicationWillResignActive(application: UIApplication) {
    UIApplication.sharedApplication().idleTimerDisabled = false
}


public func applicationDidBecomeActive(application: UIApplication) {
    UIApplication.sharedApplication().idleTimerDisabled = true
}
© www.soinside.com 2019 - 2024. All rights reserved.