Android电源管理

Android 电源管理

一、  相关概念

1.          出于节电的需要,一般应用在用户一段时间无操作的情况下屏幕变暗,然后进后休眠状态

2.          用户只能在 设置 -> 声音和显示 中设置所有应用默认的屏幕亮度和进行待机的时间

3.          电源管理的实现分内核应用两部分,通过下面介绍的接口,我们可以设置应用程序的电源管理,以控制与其休眠相关的状态(是否需要进入休眠,调整 cpu 频率,键盘灯的开关,屏幕的亮暗等)

二、  设置电源管理常用的几种状态
PARTIAL_WAKE_LOCK                     
屏幕关,键盘灯关,不休眠
SCREEN_MID_WAKE_LOCK            
屏幕灰,键盘灯关,不休眠
SCREEN_BRIGHT_WEEK_LOCK      
屏幕亮,键盘灯关,不休眠
FULL_WAKE_LOCK                            
屏幕亮,键盘灯亮,不休眠

三、  使用电源管理注意事项

1.          可在 onCreate 时设置该界面的电源管理,在 onDestroy 时取消设置

2.          可在 onResume 时设置该界面的电源管理,在 onPause 时取消设置

3.          注意设置是以 Activity 为单位,不是以应用为单位

4.          注意在 AndroidManifest.xml 中声明该应用有设置电源管理的权限

5.          注意加锁解锁要成对出现

6.          注意多个用途最好用多个锁,不要一锁多用,以免出错

7.          注意对运行在后台和异常时对锁的处理

8.          注意在网络连接或传输时最好加锁,以免传输被中断

9.          注意加锁以保证程序逻辑

四、  代码举例

1.          源码修改

1)         引入电源管理包,以使用相关类
import android.os.PowerManager;

2)         类中加入变量
PowerManager.WakeLock mWakeLock;

3)         修改 onCreate
public
void onCreate(Bundle savedInstanceState) {
         super .onCreate(savedInstanceState);
         PowerManager pm =
                              (PowerManager) getSystemService(Context.POWER_SERVICE );
         mWakeLock = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK ,
                            "XYTEST");
         mWakeLock.acquire();
}

4)         修改 onDestroy
public
void onDestroy()
{
         super .onDestroy();
         mWakeLock.release();
}

2.          AndroidManifest.xml 文件修改
<uses-permission android:name="android.permission.WAKE_LOCK" />

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值