【问题标题】:Shut Off Auto-Lock on iPad: Up-To-Date Information关闭 iPad 上的自动锁定:最新信息
【发布时间】:2026-01-09 00:20:03
【问题描述】:

我一直在阅读有关如何阻止 iOS 设备挂起的问题* 和答案,从讨论此代码问题的最一般到更具体的问题开始:

[UIApplication sharedApplication].idleTimerDisabled = YES;

有些人建议在打开它之前将其转至NO(听起来很假,但谁知道),有些人建议您需要经常打开它(什么?),以及其他类似的建议。此外,大部分建议来自 iOS 3.0。

有人在 iOS 5 中使用它吗?使用它有什么注意事项?如果我的应用程序在前台,我不希望设备随时挂起(自动锁定) (电池该死)。 idleTimerDisabled 会这样做吗?


* 这里有很多信息:https://*.com/search?q=auto-lock+ios

【问题讨论】:

  • 密切相关:*.com/q/9904306。似乎没有太大变化。
  • @RobertHarvey 完全相关,但没有明确的答案......奇怪的是这个话题如何违背正常的 SO 行为。它看起来更像一个论坛。
  • 好吧,你为什么需要我们的证明?试试看,如果不起作用,请发布一个新问题。
  • @RobertHarvey 我需要证明的原因是它有点难以测试。一些答案谈到它不能不受限制地工作,在使用相机后不能工作,以及其他情况。对我来说,它正在工作。我应该删除这个问题吗?
  • 它似乎有点本地化,仅此而已。

标签: ios auto-lock


【解决方案1】:

applicationDidBecomeActive: 中设置它并在applicationWillResignActive: 中取消设置它应该没有问题。

大多数情况下,当人们遇到“无法正常工作”的问题时,用户会切换到其他应用程序(例如相机),他们希望自己的设置能够神奇地恢复!

我在应用商店中有一个应用程序使用它,并且到目前为止没有抱怨它无法正常工作。根据您的应用,您可能希望为用户提供打开和关闭此功能的选项。

【讨论】:

  • 非常感谢。轶事证据是我们能为 iOS 做的最好的:)
  • 所以applicationDidBecomeActive 在首次启动时也会触发,对吧?
  • 是的,在application:didFinishLaunchingWithOptions:之后调用
  • 自 iOS 3.x 天以来,我的代码中禁用了空闲计时器,它工作得很好,但最近,iOS 6.x 中的某些东西发生了变化,它停止了像我预期的那样可靠地工作。我在…BecomeActive 和…ResignActive 中重新实现了它,一切都好起来了。