private void setWakeLock(Context context)
{
PowerManager pm = (PowerManager) context
.getSystemService(Context.POWER_SERVICE);
SoundAlarmActivity.WakeLock = pm.newWakeLock(
PowerManager.FULL_WAKE_LOCK |
PowerManager.ACQUIRE_CAUSES_WAKEUP
| PowerManager.ON_AFTER_RELEASE, "BusSnoozeAlarm");
SoundAlarmActivity.WakeLock.acquire();
}
我原来是用
private void setWakeLock(Context context)
{
PowerManager pm = (PowerManager) context
.getSystemService(Context.POWER_SERVICE);
SoundAlarmActivity.WakeLock = pm.newWakeLock(
PowerManager.ACQUIRE_CAUSES_WAKEUP
| PowerManager.ON_AFTER_RELEASE, "Alarm");
SoundAlarmActivity.WakeLock.acquire();
}
抛异常
这里呢要注意一下几个值的含义
Flag Value CPU Screen Keyboard
PARTIAL_WAKE_LOCK On* Off Off
SCREEN_DIM_WAKE_LOCK On Dim Off
SCREEN_BRIGHT_WAKE_LOCK On Bright Off
FULL_WAKE_LOCK On Bright Bright
貌似
ACQUIRE_CAUSES_WAKEUP和 PARTIAL_WAKE_LOCK 也不能同时用