Android 5.0新技术研究-锁屏通知(二)

上一篇文章给大家介绍了Android 5.0新技术关于锁屏通知的内容的第一部分,通知Notification的相关研究,本篇会介绍关于Android内部锁屏相关的电源管理的相关内容,初次写博客,还处于呀呀学步阶段,请各位大神指正!

通知:
NotificationManager–获取通知栏

  • NotificationManager.Builder–通知栏构造器

  • Notification显示样式

  • Notification的Action调用PendingIntent机制

锁屏状态:

  • PowerManager–电源

  • PowerManager.WakeLock–唤醒

  • KeyguardManager–锁屏管理

  • KeyguardManager.disableKeyguard()–解锁屏幕

  • KeyguardManager.reenableKeyguard()–反解锁屏幕

Application是否在后台运行,How Restart?:

  • ActivityManager–AMS(Activity Manager Service)

  • ActivityManager.RunningAppProcessInfo–所有在运行Application

intent = getPackageManager().getLaunchIntentForPackage(getPackageName())
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
startActivity(intent)

PowerManager可以对Android电源做管理,主要包括电源的开启
我们可以对设备的电源进行管理。对该类API的使用将影响到电池寿命。只有在必须使用WakeLocks的时候,才使用WakeLocks,且在不使用它的时候要及时释放(release).

PowerManager extends Object

java.lang.Object 
   ↳ android.os.PowerManager 

看图说话

默认情况下,当用户对手机有一段时间没有操作后,手机的Keyboard(这里不仅仅指硬键盘,还包括其他的所有键,比如Menu)背光将消失,从Bright变为Off,如果再过段时间没操作,屏幕(Screen)将从高亮(Bright)变为暗淡(Dim),如果再过段时间没操作,屏幕(Screen)将又由暗淡(Dim)变为不显示(Off),如果再过段时间没操作,CPU将sleep,从on变为off.通过PowerManager类可以对上述过程进行管理,可以让设备到达上面的某种状态时,该状态将不再超时,将不再往下走,但是仍然可以跳到到更上级的某种状态(比如用户有活动,可以让手机回到最高状态)。
你可以通过

Context.getSystemService()

方法来得到PowerManager类的实例。你通常需要使用的是newWakeLock(),它将创建一个PowerManager.WakeLock实例。你可以通过该对象的方法来对电源进行管理。

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
 PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
 wl.acquire();
   ..screen will stay on during this section..
 wl.release();

你可以如下的flag,来说明将进行怎样的电源管理。下面的flag都是互斥,你只有使用其中的一个。

Flag Value                   CPU     Screen      Keyboard 
PARTIAL_WAKE_LOCK            On*      Off          Off 
SCREEN_DIM_WAKE_LOCK         On       Dim          Off 
SCREEN_BRIGHT_WAKE_LOCK      On       Bright       Off 
FULL_WAKE_LOCK               On       Bright       Bright

如果你hold了一个partial wakelock,那么CPU将一直运行,甚至在用户按下电源按钮。 对于

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值