要慎用,否则很消耗电源。
官方的例子
PowerManager pm = (PowerManager)getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(
PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
wl.acquire();
..
screen will stay on during this section
..
wl.release();
CPU锁
PARTIAL_WAKE_LOCK
:很霸道,按下电源键cpu仍然运行。
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
PowerManager.
WakeLock
wl
= pm.newWakeLock(
PowerManager.PARTIAL_WAKE_LOCK |
PowerManager.ACQUIRE_CAUSES_WAKEUP |
PowerManager.ON_AFTER_RELEASE, "My Tag");
wl.acquire();
..
screen will stay on during this section
..
wl.release();
屏幕锁
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(
PowerManager.FULL_WAKE_LOCK |
PowerManager.ACQUIRE_CAUSES_WAKEUP |
PowerManager.ON_AFTER_RELEASE, "My Tag");
wl.acquire();
..
screen will stay on during this section
..
wl.release();