我可以在有来电时解锁屏幕,之后再次锁定屏幕。重新启动设备后,如果我收到第一个来电,则此逻辑无效。在随后的来电中逻辑有效。
任何帮助?
我的代码是:
String state = intent.getStringExtra(TelephonyManager.EXTRA_STATE);
if (state.contentEquals("RINGING")) {
lock.disableKeyguard();
}
lock.reenableKeyguard();
答案 0 :(得分: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
希望这会有所帮助