需求:在程序中(通过事件等方式)打开和关闭屏幕
思路:一般情况下,关闭屏幕不是将屏幕真的关闭,而是将屏幕的亮度调到最低。一般情况下Android设备对屏幕可 调节的最低亮度是有一个限制的。如果你的设备真的允许完全关闭屏幕,则只能考虑为这款设备的特性,在你 写程序时是要考虑到大多数设备的。
实现:
//启用屏幕常亮功能 private void turnOnScreen() { WindowManager.LayoutParams params = getWindow().getAttributes(); params.flags |= WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON; params.screenBrightness = 1; getWindow().setAttributes(params); } //关闭 屏幕常亮功能 private void turnOffScreen() { WindowManager.LayoutParams params = getWindow().getAttributes(); params.flags |= WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON; params.screenBrightness = 0.005f; getWindow().setAttributes(params); }
原文地址:http://blog.csdn.net/shusheng0007/article/details/44918039