gpt4 book ai didi

android - Lollipop 键盘锁没有被解雇?

转载 作者:太空狗 更新时间:2023-10-29 15:00:26 37 4
gpt4 key购买 nike

我正在开发一个应用程序,它应该在特定时间唤醒设备并关闭键盘锁以显示一些 Activity ,直到用户关闭它。所以,

getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);

不适用于 Android Lollipop,同时它可以在 Android 之前的版本上完美运行!!有什么建议吗?

最佳答案

这是有效的解决方案:

BroadcastReceiver 类

@Override
public void onReceive(Context context, Intent intent) {
mWakeLock = ((PowerManager) context.getApplicationContext().getSystemService(Context.POWER_SERVICE)).newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "TAG");
if (!mWakeLock.isHeld()) {
mWakeLock.acquire();
}
Intent intent = new Intent(context, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
mWakeLock.release();
}

MainActivity 类

@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN |
WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,
WindowManager.LayoutParams.FLAG_FULLSCREEN |
WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
setContentView(R.layout.activity);
....
}

现在它甚至可以在 Android Lollipop 5.0.1 上运行

关于android - Lollipop 键盘锁没有被解雇?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27439486/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com