android – 当屏幕进入时,保持活动在屏幕锁定上运行

前端之家收集整理的这篇文章主要介绍了android – 当屏幕进入时,保持活动在屏幕锁定上运行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我构建了一个可以作为锁屏更换的应用程序.我使用广播接收器和服务在Intent.ACTION_SCREEN_OFF之后启动我的活动.因此,每当用户锁定屏幕时,我的活动就会启动,然后当他们按下解锁按钮时,我的活动已经在锁定屏幕上运行.但这仅在用户尝试在短时间内唤醒/解锁手机时才有效.如果他们等待太久,活动就会消失.我不知道为什么会发生这种情况以及无论用户等待多长时间尝试解锁手机,我都能做些什么来保持活动.

我想过并尝试收听Intent.ACTION_SCREEN_ON,但是当用户按下手机上的电源按钮唤醒它以及应用程序加载并显示在屏幕上时会有一段延迟.在此间隙期间,用户可以看到Android OS

解决方法

如果使用 wakelock怎么办.例如:
@Override
public void onCreate(Bundle savedInstanceState) { 
    PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
    PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,"My Tag");
    wl.acquire();
    // do your things,even when screen is off
}


@Override
protected void onDestroy() {
    wl.release();
}

您还必须拥有一个唤醒锁权限是AndroidManifest.xml

uses-permission android:name="android.permission.WAKE_LOCK"

猜你在找的Android相关文章