Android 在程序中关闭和打开屏幕

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

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

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