SwiftUI iOS App 禁止息屏,禁止自动进入休眠模式

所属分类:ios | 发布于 2024-02-02 10:35:15

默认的iOS App,如果长时间不操作,会自动进入休眠模式,也就是先是屏幕变暗,接着就进入锁屏状态。

设置是否自动进入休眠模式是由UIApplicationidleTimerDisabled属性控制的,idleTimerDisabled是Object-c语言中使用的名字,在Swift语言中,该字段名称为isIdleTimerDisabled,其值为布尔类型

简单使用

设置进入界面禁用睡眠模式,离开页面开启默认的睡眠模式

VStack {
    // some View
}
.onAppear(perform: {
    // 禁用睡眠模式
    UIApplication.shared.isIdleTimerDisabled = true
})
.onDisappear(perform: {
    // 开启默认睡眠模式
    UIApplication.shared.isIdleTimerDisabled = false
})

注意:禁用睡眠模式会消耗电池电量,所以只有在需要禁止休眠的场景才禁用睡眠模式。

高级使用

上面的使用案例简单粗暴,又看到一篇文章写的案例,感觉更加合理,但是相应的逻辑也会复杂一点

UIApplication.shared.isIdleTimerDisabled = true
// Play video here
UIApplication.shared.isIdleTimerDisabled = false

 

 

文哥博客(https://wenge365.com)属于文野个人博客,欢迎浏览使用

联系方式:qq:52292959 邮箱:52292959@qq.com

备案号:粤ICP备18108585号 友情链接