Android保持屏幕常亮的三种方法

884人阅读 评论(0) 收藏 举报 本文章已收录于: 分类: android(16) 作者同类文章 X

第一种方法:

1.首先添加权限

[java] view plain copy print ?
  1. "android.permission.WAKE_LOCK">  

2.代码实现如下

[java] view plain copy print ?
  1. public class ScreenActivity extends Activity  
  2.   
  3.    {  
  4.         PowerManager powerManager = null;  
  5.         WakeLock wakeLock = null;  
  6.   
  7.         @Override  
  8.         protected void onCreate(Bundle savedInstanceState) {  
  9.             super.onCreate(savedInstanceState);  
  10.             this.setContentView(R.layout.main);  
  11.             powerManager = (PowerManager)this.getSystemService(this.POWER_SERVICE);  
  12.             wakeLock = this.powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK, "My Lock");  
  13.        }  
  14.   
  15.        @Override  
  16.        protected void onResume() {  
  17.            super.onResume();  
  18.            wakeLock.acquire();  
  19.        }  
  20.   
  21.        @Override  
  22.        protected void onPause() {  
  23.            super.onPause();  
  24.            wakeLock.release();  
  25.        }  
  26.   
  27.    }  
public class ScreenActivity extends Activity   {        PowerManager powerManager = null;        WakeLock wakeLock = null;        @Override        protected void onCreate(Bundle savedInstanceState) {            super.onCreate(savedInstanceState);            this.setContentView(R.layout.main);            powerManager = (PowerManager)this.getSystemService(this.POWER_SERVICE);            wakeLock = this.powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK, "My Lock");       }       @Override       protected void onResume() {           super.onResume();           wakeLock.acquire();       }       @Override       protected void onPause() {           super.onPause();           wakeLock.release();       }   }
第二种方法:

不用定义权限

直接在

[java] view plain copy print ?
  1. @Override   
  2. protected void onCreate(Bundle icicle) {   
  3. super.onCreate(icicle);  
  4.   
  5. getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);   
  6. }  
@Override protected void onCreate(Bundle icicle) { super.onCreate(icicle);getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); }




补充一下创建锁时flag的值及意义:




int flags 
各种锁的类型对CPU 、屏幕、键盘的影响:
PARTIAL_WAKE_LOCK :保持CPU 运转,屏幕和键盘灯有可能是关闭的。
SCREEN_DIM_WAKE_LOCK :保持CPU 运转,允许保持屏幕显示但有可能是灰的,允许关闭键盘灯
SCREEN_BRIGHT_WAKE_LOCK :保持CPU 运转,允许保持屏幕高亮显示,允许关闭键盘灯
FULL_WAKE_LOCK :保持CPU 运转,保持屏幕高亮显示,键盘灯也保持亮度

第三种方法:

也是最简单的

在布局文件里加上Android:keepScreenOn="true"



1
0
   

我的同类文章

android(16) http://blog.csdn.net
  • 如何在安卓应用程序中保存数据2015-05-29阅读216
  • 【转】 android-继承BaseAdapter--自定义适配器,getView执行多次的解决方法2015-05-20阅读296
  • android 带添加按钮的EditText2014-12-10阅读3000
  • android 选人 多级树的实现2014-12-10阅读2133
  • Android开发 解决AlertDialog中的EditText无法调出输入法的问题 .2014-08-07阅读310
  • 为什么不能往Android的Application对象里存储数据2015-05-29阅读211
  • android获取string.xml的值 .2014-12-11阅读166
  • android 自定义日期输入 EditText2014-12-10阅读4096
  • Android DatePickerDialog 只显示年月2014-11-24阅读682
  • startActivityForResult用法详解2014-07-28阅读202
更多文章

更多相关文章

  1. Android 手动设置屏幕方向后不能自动转屏问题
  2. android 监听手机屏幕唤醒和睡眠广播
  3. Android 软键盘弹出 【遮挡输入框】【遮挡RecyclerView】的问题
  4. android的frameworks层键盘事件处理流程分析
  5. Android自适应不同分辨率或不同屏幕大小
  6. Android 解屏幕锁与点亮屏幕
  7. Android 屏幕实现水龙头事件
  8. android软键盘enter键的替换与事件监听

随机推荐

  1. android系统自带的主题与样式(theme and
  2. 【史上最全】android 中系统自带的主题与
  3. TextView控件的使用(Android设置文本显示
  4. android中自带的主题(theme)的集
  5. 十六、Android(安卓)滑动效果汇总
  6. android:paddingLeft和android:layout_ma
  7. android中的style部分属性值介绍
  8. android常用链接
  9. Android应用开发――系统自带样式Android
  10. Android:Material Design(六) 使用Drawab