Android M检测权限对话框是否可见

Tha*_*man 8 android android-permissions android-6.0-marshmallow

如何以编程方式确定用户是否可以看到权限对话框,以便我知道在这种情况下该怎么做?

Rom*_*ets 3

@Override
protected void onStart() {
    super.onStart();
        ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
        ComponentName cn = am.getRunningTasks(1).get(0).topActivity;
        if ("com.android.packageinstaller.permission.ui.GrantPermissionsActivity".equals(cn.getClassName())){
            //permission dialog is displayed
        }
}`
Run Code Online (Sandbox Code Playgroud)

`

  • 请注意, getRunningTasks() 现已弃用,因此该解决方案将来可能不可行。 (2认同)