我目前正在从事计时器项目。基本上,这很简单:用户输入时间,时间用完,用户会收到全屏通知(带有文本视图和声音的简单全屏活动)。所述通知由后台服务调用,以确保即使在用户执行其他操作时也被调用。
现在,一切正常,直到屏幕锁定。我无法尝试解锁任何东西。
最后,我设置了以下标志(在被称为的通知活动内部):
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.timer);
this.getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
this.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
this.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
...
但是即使那样,键盘锁也不会禁用,并且不会显示通知。唯一发生的事情就是屏幕打开。
我在这里想念什么吗?
附言:我已经尝试使用唤醒锁了,但是也没有用。
最佳答案
希望您能解决问题,但是为了避免其他情况,请尝试在setContentView()方法之后设置标志,并使用setFlags()方法。
这就是我在应用程序中所做的,并且可以正常工作。
关于android - 以编程方式禁用android非安全键盘锁,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9270743/