Android遊戲之喚醒鎖

Android遊戲之喚醒鎖

Android最耗電首當觸摸屏.為節約電能很多人都將亮度降低.但又耗神.折中之法是系統自動變暗進入睡眠狀態.觸屏後自動變明亮.如果想屏膜保持喚醒狀態可是WakeLock.但觸屏遊戲是不需WakeLock『喚醒鎖』.它只適用於通過『加速計』控制之遊戲.

首先在AndroidManifest.xml添加權限

<uses-permission android:name=”android.permission.WAKE_LOCK” />

獲取電源管理器

PowerManager power_manager = (PowerManager)context.getSystemService(Context.POWER_SERVICE);

生成喚醒鎖. levelAndFlagsw為控制標記.tag為鎖名

PowerManager.newWakeLock(int levelAndFlags, String tag)

levelAndFlags: 屏幕燈 鍵盤燈
PARTIAL_WAKE_LOCK 關閉 關閉
SCREEN_DIM_WAKE_LOCK 低亮度 關閉
SCREEN_BRIGHT_WAKE_LOCK 高亮度 關閉
FULL_WAKE_LOCK 高亮度 開啟
ON_AFTER_RELEASE 延時關燈 關閉
ACQUIRE_CAUSES_WAKEUP 強制開啟 強制開啟

一般使用PARTIAL_WAKE_LOCK生成喚醒鎖

WakeLock wake_lock = power_manager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,”LOCK”);

啟用喚醒鎖.在Activity.onResume()中調用

wake_lock.acquire();

釋放喚醒鎖.在Activity.onPause()中調用

wake_lock.release();

 

評論