运行程序时保持 iphone 处于活动状态
Posted
技术标签:
【中文标题】运行程序时保持 iphone 处于活动状态【英文标题】:Keep iphone active while running program 【发布时间】:2009-01-29 21:23:00 【问题描述】:如何设置 iPhone 设备在我的应用程序运行时保持活动状态(不锁定)? 任何想法
【问题讨论】:
【参考方案1】:我不确定这是否会阻止设备锁定,但您可以使用UIApplication
的idleTimerDisabled
属性阻止屏幕变暗:
[UIApplication sharedApplication].idleTimerDisabled = YES;
来自文档:
重要提示:您应该仅在必要时设置此属性,并确保在不再需要时将其重置为 NO。大多数应用程序应该让系统在空闲计时器结束时关闭屏幕。这包括音频应用程序。通过适当使用音频会话服务,当屏幕关闭时,播放和录制不会中断。唯一应该禁用空闲计时器的应用程序是映射应用程序、游戏或具有零星用户交互的类似程序。
【讨论】:
【参考方案2】:此代码将防止您的 iPhone 在您的应用运行时进入睡眠状态
// avoid sleeping when this application is running
UIApplication *application = [UIApplication sharedApplication];
application.idleTimerDisabled = YES;
// Or simpler
[[UIApplication sharedApplication] setIdleTimerDisabled: YES];
【讨论】:
请注意阅读此已接受答案的任何人:这仅在您已经拥有application
对象时才有效,这并不常见。相反,您应该使用[UIApplication sharedApplication].idleTimerDisabled = YES;
【参考方案3】:
如果你来到这里寻找 Swift 的答案,那就是:
UIApplication.sharedApplication().idleTimerDisabled = true
适用于 Swift 3
UIApplication.shared.isIdleTimerDisabled = true
The warning in this comment still applies.
【讨论】:
斯威夫特 3:UIApplication.shared.isIdleTimerDisabled = true
以上是关于运行程序时保持 iphone 处于活动状态的主要内容,如果未能解决你的问题,请参考以下文章
如何在后台保持 iphone ios websocket 连接处于活动状态?