Android 判断应用是否开启了通知权限

Android 判断是否开启了应用权限

  • 判断是否开启应用权限方法
  • 如果没有开启应用权限,引导用户点击开启按钮,然后跳转到系统设置界面

判断是否开启应用权限方法

NotificationManagerCompat.from(context).areNotificationsEnabled();

如果没有开启应用权限,引导用户点击开启按钮,然后跳转到系统设置界面

private void goToSetting() {
    Intent intent = new Intent();
    if (Build.VERSION.SDK_INT >= 26) {// android 8.0引导
        intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");
        intent.putExtra("android.provider.extra.APP_PACKAGE", getPackageName());
    } else if (Build.VERSION.SDK_INT >= 21) { // android 5.0-7.0
        intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");
        intent.putExtra("app_package", getPackageName());
        intent.putExtra("app_uid", getApplicationInfo().uid);
    } else {//其它
        intent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS");
        intent.setData(Uri.fromParts("package", getPackageName(), null));
    }
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(intent);
}

你可能感兴趣的:(Android,问题解决方案)