iOS实现控制屏幕常亮不变暗的方法示例

 更新时间:2017年10月23日 11:15:30   作者:随风  
最近在工作中遇到了要将iOS屏幕保持常亮的需求,所以下面这篇文章主要给大家介绍了关于利用iOS如何实现控制屏幕常亮不变暗的方法,文中给出了详细的示例代码,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。

前言

最近在做一个开发,有一个地方同步音乐文件,有时间会出现屏幕熄灭状态,导致同步出现断开,现在决定在同步时保持屏幕常亮,其实很多时候我们需要保持屏幕高亮,下面就来给大家介绍一个实现的方法,但是要记得在适当的时候关闭常亮

示例代码

//设置屏幕常亮
[UIApplication sharedApplication].idleTimerDisabled = YES;
//取消设置屏幕常亮
[UIApplication sharedApplication].idleTimerDisabled = NO;
 
//设置屏幕常亮
[[UIApplication sharedApplication] setIdleTimerDisabled:YES];
//取消设置屏幕常亮
[[UIApplication sharedApplication] setIdleTimerDisabled:NO];

但是有些控件的存在是不会锁屏的,比如AVPlayer,播放的时候是不会锁屏的,但是暂停或者停止播放之后系统会自动关闭常亮,正好与我们的设计冲突,所以我这里做了一个监听,如果屏幕锁屏被关,立马把它打开,最后要记得移除监听并且关闭锁屏。

//监听锁屏变化
[[UIApplication sharedApplication] addObserver:self forKeyPath:@"idleTimerDisabled" options:NSKeyValueObservingOptionNew context:nil];
 
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context{
 // setToast(@"值改变操作");
 if (![UIApplication sharedApplication].idleTimerDisabled) {
 [UIApplication sharedApplication].idleTimerDisabled = YES;
 }
}
 
 
- (void)dealloc{
 [[UIApplication sharedApplication] removeObserver:self forKeyPath:@"idleTimerDisabled"];
 [UIApplication sharedApplication].idleTimerDisabled = NO;
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • IOS 自定义UIPickView详解及实例代码

    IOS 自定义UIPickView详解及实例代码

    这篇文章主要介绍了IOS 自定义UIPickView详解及实例代码的相关资料,这里写个小实例及效果图,附有实例代码,需要的朋友可以参考下
    2016-12-12
  • IOS 开发之Object-C中的对象详解

    IOS 开发之Object-C中的对象详解

    这篇文章主要介绍了IOS 开发之Object-C中的对象详解的相关资料,需要的朋友可以参考下
    2017-06-06
  • React Native学习教程之Modal控件自定义弹出View详解

    React Native学习教程之Modal控件自定义弹出View详解

    这篇文章主要给大家介绍了关于React Native学习教程之Modal控件自定义弹出View的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用React Native具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-10-10
  • iOS 断点上传文件的实现方法

    iOS 断点上传文件的实现方法

    这项目开发中,有时候我们需要将本地的文件上传到服务器,简单的几张图片还好,但是针对iPhone里面的视频文件进行上传,为了用户体验,我们有必要实现断点上传。这篇文章主要介绍了iOS 断点上传文件的实现方法,需要的朋友可以参考下
    2017-12-12
  • 在iOS应用中使用UIWebView创建简单的网页浏览器界面

    在iOS应用中使用UIWebView创建简单的网页浏览器界面

    这篇文章主要介绍了在iOS应用中使用UIWebView创建简单的网页浏览器界面的方法,包括动态获取UIWebView高度的实现,需要的朋友可以参考下
    2016-01-01
  • iOS开发学习之监测程序的崩溃次数详解

    iOS开发学习之监测程序的崩溃次数详解

    iOS开发中遇到程序崩溃是很正常的事情,下面这篇文章主要给大家介绍了关于iOS如何监测程序崩溃次数的相关资料,文中通过详细的示例代码供大家参考学习,需要的朋友们下面跟着小编来一起学习学习吧。
    2017-07-07
  • swift 常用高阶函数分享

    swift 常用高阶函数分享

    Swift是一门面向协议的语言,在使用Swift时我们已经充分享受到了面向协议编程带给我们的便利,但是Swift相比Obj-C还有一个更重要的优点,那就是对函数式编程提供了很好的支持,其中Swift提供了map,filter,reduce这三个高阶函数Higher Order function作为对容器的支持
    2017-12-12
  • IOS 应用之间的跳转和数据传递详解

    IOS 应用之间的跳转和数据传递详解

    这篇文章主要介绍了IOS 应用之间的跳转和数据传递详解的相关资料,需要的朋友可以参考下
    2016-09-09
  • iOS优化UITableViewCell高度计算的一些事儿

    iOS优化UITableViewCell高度计算的一些事儿

    这iOS开发中对于UITableViewCell高度自适应的文章已经很多很多,但都不是自己所需要的,下面篇文章主要给大家介绍了关于iOS优化UITableViewCell高度计算的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-11-11
  • iOS开发之UITableView详解

    iOS开发之UITableView详解

    在iOS开发中UITableView可以说是使用最广泛的控件,我们平时使用的软件中到处都可以看到它的影子,类似于微信、QQ、新浪微博等软件基本上随处都是UITableView。当然它的广泛使用自然离不开它强大的功能,今天这篇文章将针对UITableView重点展开讨论
    2016-04-04

最新评论