防止锁定屏幕在唤醒时显示?

时间:2013-11-20 16:00:35

标签: android lockscreen wakelock android-wake-lock

我正在构建一个警报应用程序。我有它所以广播接收器获得唤醒锁并开始报警活动。这些是我正在使用的标志:

激活锁定:

PowerManager pm = (PowerManager) ctx.getSystemService(Context.POWER_SERVICE);
WakeLock wakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK |
                                   PowerManager.ACQUIRE_CAUSES_WAKEUP |
                                   PowerManager.ON_AFTER_RELEASE, ctx.getPackageName());
wakeLock.acquire();

的活动:

getWindow().addFlags(LayoutParams.FLAG_KEEP_SCREEN_ON + 
                     LayoutParams.FLAG_DISMISS_KEYGUARD +
                     LayoutParams.FLAG_SHOW_WHEN_LOCKED + 
                     LayoutParams.FLAG_TURN_SCREEN_ON);

发生的事情是正确调用活动,但随后会调用锁定屏幕,它会激活我的活动上的onPause。然后我的活动显示在锁定屏幕前面。因此整体行为是屏幕闪烁,然后关闭,然后重新开启。这导致我的活动继续创建 - > onResume - > onPause - >的onResume。如果可能的话我想避免使用onPause。有什么建议吗?

0 个答案:

没有答案