在ios中是否有任何类型的部分唤醒锁定机制?

时间:2013-12-14 05:51:33

标签: ios iphone objective-c wakelock

在android中如果你持有部分唤醒锁定,CPU将继续运行,无论显示超时或屏幕状态如何,甚至在用户按下电源按钮之后。在所有其他唤醒锁中,CPU将运行,但用户仍然可以使用电源按钮使设备进入休眠状态。 iOS中有这样的机制吗?当设备处于锁定屏幕时,CPU将继续运行并检测手势和传感器。

3 个答案:

答案 0 :(得分:3)

没有。 Apple故意无法使用此功能以保护电池寿命。允许这种情况的唯一背景模式,即你的应用程序基本上总是在后台执行而设备没有进入休眠状态(但屏幕可以关闭),是VOIP和位置服务。为了防止滥用这些后台模式,Apple评论员在plist文件中指定这些模式的应用程序要困难得多,以确保应用程序确实需要这些模式。

如果您打算创建一个不会进入应用程序商店的企业应用程序,您当然可以使用这些模式以及私有API来实现您的目标。

答案 1 :(得分:1)

它的价值,

当设备相机处于预览状态时,屏幕不会进入睡眠状态。

可能是立即使用的类似WAKELOCK的选项。

答案 2 :(得分:0)

如果有人仍在搜索,我通过将isIdleTimerDisabled设置为true找到了防止应用进入睡眠的方法。它会关闭用于检测手机应进入睡眠时间的计时器。

UIApplication.shared.isIdleTimerDisabled = true

现在,如果要在特定时间点将其关闭,也可以尝试使用计时器将其再次设置为false。例如,如果您想在3分钟后将其关闭,则可以执行以下操作:

let _ = Timer.scheduledTimer(withTimeInterval: 180, repeats: false) { (Timer) in
    UIApplication.shared.isIdleTimerDisabled = false
}
相关问题