前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android 之 设置屏幕常亮

Android 之 设置屏幕常亮

作者头像
forrestlin
发布2022-04-02 09:23:04
1.8K0
发布2022-04-02 09:23:04
举报
文章被收录于专栏:蜉蝣禅修之道蜉蝣禅修之道

转自:http://blog.csdn.net/feimor/article/details/6678207

保持屏幕常亮的两种方法:

我们大家在用手机的时候,会遇到这样的一个问题,就是想让我们的手机屏幕一直亮着怎么办。大家会想到的是,在手机设置里有一个不省电模式,选择这个就可以了,但是我们要在代码中是怎么样办那,我们。其实eoe有两种方法就可以解决这个问题,大家想一想,我们在android里那个地方老是常定义权限呀,有了这个提示,大家就会想到是哪个文件了吧,AndroidManifest.xml:我们要在这个文件里定义一下权限就可以实现我们的手机屏幕保持常亮了。这个方法也是最简单的一个方法,那么我们下面就来看看它的代码: Java代码: 01.<uses-permission android:name="android.permission.WAKE_LOCK" /> 复制代码 Java代码: 01.PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); 02.PowerManager.WakeLock mWakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag"); 03.// in onResume() call 04. 05.mWakeLock.acquire(); 06.// in onPause() call 07.mWakeLock.release(); 复制代码 我们再在main代码中写上PowerManager.SCREEN_DIM_WAKE_LOCK,这个是我们android系统提供给我们的,我们要把它用上,这句代码的意思是长亮的意思,这样我们就可以实现了,因为我们在上面已经定义了权限。这样我们就有权利使用这个长亮属性。这就是第一种方法。 第二种我们不怎么常用,但有的时候我们也能用得到,我们就来讲讲这第二种方法吧。这种方法我们就在main代码中做一个方法,这个方法就是onCreate(Bundle icicle)我们要在括号里写上参数,这样我们才可以用这个参数,我们在super.onCreate(icicle);这个句的意思就是得到参数,我们也就是实现完了,最后我们在找到LayoutParams.FLAG_KEEP_SCREEN_ON这个android系统提供给我们的属性,这样我们第二个方法就完事了,这个方法就是不用在AndroidManifest.xml:里定义权限了。这样也不比较麻烦,但有时会把参数给忘了,这个是重点,因为这样我们也实现不了效果,这么说的,两个方法有利有弊,用的时候就要看开发者自己的喜好了,喜好哪个就用哪个。 Java代码: 01.@Override 02.protected void onCreate(Bundle icicle) { 03.super.onCreate(icicle); 04. 05.getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

06.}

补充一下创建锁时flag的值及意义: int flags 各种锁的类型对CPU 、屏幕、键盘的影响: PARTIAL_WAKE_LOCK :保持CPU 运转,屏幕和键盘灯有可能是关闭的。 SCREEN_DIM_WAKE_LOCK :保持CPU 运转,允许保持屏幕显示但有可能是灰的,允许关闭键盘灯 SCREEN_BRIGHT_WAKE_LOCK :保持CPU 运转,允许保持屏幕高亮显示,允许关闭键盘灯 FULL_WAKE_LOCK :保持CPU 运转,保持屏幕高亮显示,键盘灯也保持亮度

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档