zoukankan      html  css  js  c++  java
  • 转:Android 设置屏幕不待机

    本文转载于:http://blog.csdn.net/yudajun/article/details/7748760

    Android设置支部待机有两种方法

    第一种简单通过设置WindowManager属性实现:

    在Activity oncreat()方法中设置

    getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

    第二种使用android的PowerManager和PowerManager.WakeLock实现:

    //添加锁

    private void acquireWakeLock() {  
             if (wakeLock == null) {  
                    Logger.d("Acquiring wake lock");  
                    PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);  
                    wakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, this.getClass().getCanonicalName());  
                    wakeLock.acquire();  
                }  
              
        }  
      
    //释放锁  
    private void releaseWakeLock() {  
            if (wakeLock != null && wakeLock.isHeld()) {  
                wakeLock.release();  
                wakeLock = null;  
            }  
      
        }  

    acquireWakeLock()方法在Activity的 onResume中被调用。releaseWakeLock()方法在Activity的 onPause中被调用。利用Activiy的生命周期,巧妙的让 acquire()和release()成对出现。

    关于int flags

    各种锁的类型对CPU 、屏幕、键盘的影响:

    PARTIAL_WAKE_LOCK:保持CPU 运转,屏幕和键盘灯有可能是关闭的。

    SCREEN_DIM_WAKE_LOCK:保持CPU 运转,允许保持屏幕显示但有可能是灰的,允许关闭键盘灯

    SCREEN_BRIGHT_WAKE_LOCK:保持CPU 运转,允许保持屏幕高亮显示,允许关闭键盘灯

    FULL_WAKE_LOCK:保持CPU 运转,保持屏幕高亮显示,键盘灯也保持亮度

    最后不要忘记!

    要进行电源的操作需要在AndroidManifest.xml中声明该应用有设置电源管理的权限。

    <uses-permission android:name="android.permission.WAKE_LOCK" />
    你可能还需要
    <uses-permission android:name="android.permission.DEVICE_POWER" />
  • 相关阅读:
    APUE习题3.2用dup实现dup2以及shell中重定向符号的使用
    如何理解git checkout -- file和git reset HEAD -- file
    bash中通过设置PS1变量改变提示符颜色
    Ubuntu中root的默认密码
    Kali中装中文输入法小企鹅
    Find the Top 10 commands in your linux box!
    简明awk教程(Simple awk tutorial)
    PHP错误解决:Fatal error: Unknown: Failed opening required ...
    简单的端口扫描器(TCP connect)
    c# 爬虫(三) 文件上传
  • 原文地址:https://www.cnblogs.com/bewolf/p/4657788.html
Copyright © 2011-2022 走看看