Android 如何获取安卓锁屏软件包名称
有没有办法获得安卓锁屏软件包的名称Android 如何获取安卓锁屏软件包名称,android,package,lockscreen,Android,Package,Lockscreen,有没有办法获得安卓锁屏软件包的名称 我想使用AlertDialog.Builder在锁屏上显示警报。因此,我需要知道锁屏何时处于活动状态,以及它的软件包名称。您可以检测锁屏是否显示以下内容: ((KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE)).inKeyguardRestrictedInputMode(); 您可以通过以下方式获得当前最热门的活动: (ActivityManager) getSystemService(S
我想使用
AlertDialog.Builder
在锁屏上显示警报。因此,我需要知道锁屏何时处于活动状态,以及它的软件包名称。您可以检测锁屏是否显示以下内容:
((KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE)).inKeyguardRestrictedInputMode();
您可以通过以下方式获得当前最热门的活动:
(ActivityManager) getSystemService(Service.ACTIVITY_SERVICE).getRunningTasks(1).get(0).topActivity;
这通常是锁屏活动,但有可能在锁屏活动时显示手机应用程序:在这种情况下,这将是手机活动
您需要android.permission.GET_TASKS权限才能使其正常工作。这真是一个简单的解决方案
KeyguardManager km = (KeyguardManager) getApplicationContext().getSystemService(Context.KEYGUARD_SERVICE);
if( km.inKeyguardRestrictedInputMode()) {
//it is locked
}
找到了本机解决方案。生成警报对话框后,在显示它之前,应用以下内容:
AlertDialog alertDialog = new AlertDialog.Builder(context).create();
alertDialog.getWindow().setType(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
alertDialog.show();
这将在锁屏顶部显示对话框。@llya_Gazman它不工作,是否需要任何权限。@FaisalAhsan不,没有权限。