Android設定某個視窗常亮和最大亮度

2021-08-03 09:35:33 字數 753 閱讀 3098

目錄(?)

[+]

最近專案中涉及到這個需求,查閱相關資料,總結出最簡單和適用的方法:

在需要常亮的視窗介面也就是activity,它的布局檔案根布局裡加上android:keepscreenon=」true」

window是android的乙個抽象類,用來描述當前應用的視窗。我們可以像普通的view一樣獲得window的layoutparams,然後設定裡面的屬性,然後設定到window裡面去。 

1. 首先定義乙個方法setwindowbrightness

/** * 設定當前視窗亮度 *@param brightness */

private

void

setwindowbrightness(float brightness)

2. 在activity的oncreate生命週期裡呼叫這個方法,調節螢幕亮度最大

//設定螢幕亮度最大

setwindowbrightness(windowmanager.layoutparams.brightness_override_full);

3. 在activity的ondestroy生命週期裡呼叫這個方法,當離開當前視窗時,取消螢幕最亮效果

//取消螢幕最亮

setwindowbrightness(windowmanager.layoutparams.brightness_override_none);

Android常亮設定以及讀取電量

getwindow addflags windowmanager.layoutparams.flag keep screen on 1 新建乙個廣播類去接收系統電池變化資訊,在這裡通過呼叫intent.getextras 方法得到intent攜帶的bundle集合 其中有當前電量字段 level 總...

android 螢幕常亮

今個發現乙個新的方式,使螢幕常亮竟然如此簡單 傳統的方式 亮 getwindow addflags windowmanager.layoutparams.flag keep screen on 滅 getwindow clearflags windowmanager.layoutparams.fla...

Android保持螢幕常亮

方法一 新增許可權 powermanager pm powermanager getsystemservice context.power service powermanager.wakelock mwakelock pm.newwakelock powermanager.screen dim w...