为ACQUIRE_CAUSES_WAKEUP指定有效的唤醒锁定级别

时间:2017-11-25 07:04:50

标签: android android-wake-lock

我尝试使用以下代码从线程唤醒设备:

PowerManager powerManager = (PowerManager) GydeApplication.getAppContext().getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wakeLock = powerManager.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP,
        "MyWakelockTag");
wakeLock.acquire(10*60*1000L /*10 minutes*/);

并添加了以下权限:

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

但是得到以下错误:

Must specify a valid wake lock level.

wakelock创作。

2 个答案:

答案 0 :(得分:0)

FULL_WAKE_LOCK
PARTIAL_WAKE_LOCK
SCREEN_BRIGHT_WAKE_LOCK
SCREEN_DIM_WAKE_LOCK

您需要指定一个

答案 1 :(得分:0)

除了SahdevRajput74的答案: 从API级别17开始,不推荐使用FULL_WAKE_LOCK。 使用here中建议的WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON