如何在活动处于活动状态时禁用键盘锁,并在活动被销毁时禁用可更新的键盘锁

时间:2015-01-15 10:02:46

标签: android android-activity android-softkeyboard

当我在特定活动中处于活动状态时,我不希望我的屏幕锁定,一旦活动被破坏,屏幕可能会锁定。我试过下面的东西,但它似乎没有起作用。

if (flag){
                 Log.d("Admin", "SCREEN_OFF came from Activity");
                 KeyguardManager manager = (KeyguardManager) this.getSystemService(Context.KEYGUARD_SERVICE);
                 KeyguardLock lock = manager.newKeyguardLock("abc");
                 lock.disableKeyguard();
            }

虽然禁用我正在使用下面的onDestoroy

if (!flag){
        Log.d("Admin", "Reenabling Temp lock onDestroy");
        KeyguardManager manager = (KeyguardManager) this.getSystemService(Context.KEYGUARD_SERVICE);
        KeyguardLock lock = manager.newKeyguardLock("abc");
        lock.reenableKeyguard();
        }

注意:两者都有两个不同的类。我正在为两者创建两个不同的对象是它不工作的原因。请分享您的观点

您还可以分享您使用过的代码。

由于

1 个答案:

答案 0 :(得分:0)

此代码可以帮助您禁用键盘锁

View view = getActivity().getCurrentFocus();
                InputMethodManager inputManager = (InputMethodManager) getActivity()
                        .getSystemService(Context.INPUT_METHOD_SERVICE);
                inputManager.hideSoftInputFromWindow(view.getWindowToken(),
                        InputMethodManager.HIDE_NOT_ALWAYS);