0

我可以在有来电时解锁屏幕,然后再次锁定屏幕。重新启动设备后,如果我收到第一个来电,则此逻辑不起作用。在随后的来电中,逻辑起作用。

有什么帮助吗??

我的代码是:

String state = intent.getStringExtra(TelephonyManager.EXTRA_STATE);
if (state.contentEquals("RINGING")) {
    lock.disableKeyguard();
}
    lock.reenableKeyguard();
4

1 回答 1

0

在我看来,您的“锁定”对象在第一次调用之前并不存在,但我无法通过查看那段代码来判断。

我使用 windowmanager 来解锁和锁定我的屏幕。

Window window = getWindow();
WindowManager.LayoutParams windowParams = window.getAttributes();
    winParams.flags |= WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED;
    window.setAttributes(winParams);    

http://developer.android.com/reference/android/view/WindowManager.LayoutParams.html

希望这可以帮助

于 2011-12-08T16:15:44.940 回答