标签:android style blog http io color ar os 使用
手机应用开发,经常会需要让手机屏幕保持常亮,或是在屏幕锁上的时候,解除锁定。
android 系统(当然我开发的android系统版本是4.0) 通过上下文也有翻译为内容,获取Window对象,之后就可以对当前屏幕进行参数设定了。
屏幕灯的管理,需要用到PowerManager对象,通过系统服务获取该对象。而具体操作需要android.os.PowerManager.WakeLock对象进行操作,
具体看实例。执行完毕,需要释放操作对象的资源。附上newWakeLock获取操作对象的参数解释表格。
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 |
当然对于PowerManager进一步了解,还是要多看看官方文档才行。
实例代码:
1 // 解除键盘锁,保持屏幕灯常亮。设置在setContentView前有效。 2 getWindow().addFlags( 3 WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD 4 | WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED 5 | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 6 PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); 7 wl = pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP 8 | PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "AlarmActivity"); 9 wl.acquire();
对于参数的解释,建议看官方的API文档,解释的比较权威。
使用的时候还需要在manifest.xml配置文件中添加权限:
1 <uses-permission android:name="android.permission.WAKE_LOCK"/> <!--屏幕灯操作权限-->
2 <uses-permission android:name="android.permission.DISABLE_KEYGUARD" /> <!--解锁权限-->
参考资料:
部分来源于互联网。感谢大家的分享!
标签:android style blog http io color ar os 使用
原文地址:http://www.cnblogs.com/superAdam/p/4087877.html