然而,当我打电话时,我正在尝试获取唤醒锁PowerManager.newWakeLock()
我收到 IlleglArgumentException。
这是我用来获取的代码
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();
}
这是 logcat:
09-28 12:53:09.704: ERROR/AndroidRuntime(702): java.lang.IllegalArgumentException
09-28 12:53:09.704: ERROR/AndroidRuntime(702): at android.os.PowerManager$WakeLock.<init>(PowerManager.java:223)
09-28 12:53:09.704: ERROR/AndroidRuntime(702): at android.os.PowerManager.newWakeLock(PowerManager.java:365)
尝试这个:
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();
}
PowerManager.ACQUIRE_CAUSES_WAKEUP 不适用于部分唤醒锁,因此您必须确保在定义所需的唤醒锁类型时使用 FULL_WAKE_LOCK。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)