需求:在程序中(通过事件等方式)打开和关闭屏幕

思路:一般情况下,关闭屏幕不是将屏幕真的关闭,而是将屏幕的亮度调到最低。一般情况下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);

}

本文同步分享在 博客“ShuSheng007”(CSDN)。

如有侵权,请联系 support@oschina.cn 删除。

本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐