[問題] 關於Android螢幕亮暗和電源管理的部分
開發層: (應用/框架/庫/核心) 應用->核心
問題:
請教各位有經驗的大大,最近在研究有關如何把Android裝置的LCD背光關閉
以降低電源消耗(以Power Tutor測試功率消耗)
google查到的有關的方式叫做wake lock
又根據Android Development Power Management部分查到的API如下
mPowerManager=(PowerManager)getSystemService(Context.POWER_SERVICE);
mWakeLock=mPowerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,"Backlight");
想問的是根據wake lock定義"PARTIAL_WAKE_LOCK"是cpu-continue screen-off
可是我將wakelock.acquire以buttonClickListener方式啟動
以p500測試,似乎沒有感覺到甚麼事情發生(螢幕過30秒還是會暗下來,接著慢慢關閉)
有辦法是立即關閉LCD backlight的方式嗎?
ps.查到的另外方式為
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.screenBrightness = 0.0f;//亮度值
getWindow().setAttributes(lp);
是可以直接設定亮度,可是這方式有個問題是當我亮度設0會進入
類似按下電源鍵那樣關閉螢幕,需要再以按電源鍵方式開啟LCD
(但會馬上再進入程式,而我沒設定onresume時又會在暗下來)
其他值雖然不會(如0.01f),但我以Power Tutor查看功率消耗,LCD功耗部分完全沒降!!!
比較疑惑的是p500內建有直接調整螢幕亮暗的widget,用那個測試螢幕亮暗時的功耗
再用power tutor查看都會有反應(不像WindowManager.LayoutParams 維持定值)
輸入:
預期輸出:
恩...簡單的說我只是要把LCD 背光關閉
然後用power tutor查看會有功耗下降的結果
錯誤輸出:
錯誤訊息:
程式碼: (請多利用置底文網站)
參考: (書籍/網頁/...)
補充說明:
麻煩各位了!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.122.217.97
AndroidDev 近期熱門文章
PTT數位生活區 即時熱門文章