本文實例講述了Android電源管理。分享給大家供大家參考,具體如下:
一、 相關概念
1. 出于節電的需要,一般應用在用戶一段時間無操作的情況下屏幕變暗,然后進入休眠狀態
2. 用戶只能在”設置->聲音和顯示”中設置所有應用默認的屏幕亮度和進行待機的時間
3. 電源管理的實現分內核應用兩部分,通過下面介紹的接口,我們可以設置應用程序的電源管理,以控制與其休眠相關的狀態(是否需要進入休眠,調整cpu頻率,鍵盤燈的開關,屏幕的亮暗等)
二、 設置電源管理常用的幾種狀態
PARTIAL_WAKE_LOCK 屏幕關,鍵盤燈關,不休眠
SCREEN_MID_WAKE_LOCK 屏幕灰,鍵盤燈關,不休眠
SCREEN_BRIGHT_WEEK_LOCK 屏幕亮,鍵盤燈關,不休眠
FULL_WAKE_LOCK 屏幕亮,鍵盤燈亮,不休眠
三、 使用電源管理注意事項
1. 可在onCreate時設置該界面的電源管理,在onDestroy時取消設置
2. 可在onResume時設置該界面的電源管理,在onPause時取消設置
3. 注意設置是以Activity為單位,不是以應用為單位
4. 注意在AndroidManifest.xml中聲明該應用有設置電源管理的權限
5. 注意加鎖解鎖要成對出現
6. 注意多個用途最好用多個鎖,不要一鎖多用,以免出錯
7. 注意對運行在后臺和異常時對鎖的處理
8. 注意在網絡連接或傳輸時最好加鎖,以免傳輸被中斷
9. 注意加鎖以保證程序邏輯
四、 代碼舉例
1. 源碼修改
1) 引入電源管理包,以使用相關類
import Android.os.PowerManager;
2) 類中加入變量
PowerManager.WakeLock mWakeLock;
3) 修改onCreate
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); PowerManager pm =(PowerManager)getSystemService(Context.POWER_SERVICE); mWakeLock = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "XYTEST"); mWakeLock.acquire();}4) 修改onDestroy
public void onDestroy(){ super.onDestroy(); mWakeLock.release();}2. AndroidManifest.xml文件修改
PS:更多關于AndroidManifest.xml配置項及其功能可參考本站在線工具:
Android Manifest功能與權限描述大全:
http://tools.VeVB.COm/table/AndroidManifest
更多關于Android相關內容感興趣的讀者可查看本站專題:《Android數據庫操作技巧總結》、《Android編程之activity操作技巧總結》、《Android文件操作技巧匯總》、《Android編程開發之SD卡操作方法匯總》、《Android開發入門與進階教程》、《Android資源操作技巧匯總》、《Android視圖View技巧總結》及《Android控件用法總結》
希望本文所述對大家Android程序設計有所幫助。
新聞熱點
疑難解答