简介
xxx
工具类
package widget.notification.kit;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.provider.Settings;
import androidx.core.app.NotificationManagerCompat;
/**
* Created on 2019/8/8.
*
* @author 郑少鹏
* @desc NotificationKit
*/
public class NotificationKit {
/**
* 通知允
*
* @param context 上下文
* @return 通知允
*/
public static boolean notificationEnable(Context context) {
NotificationManagerCompat manager = NotificationManagerCompat.from(context);
// areNotificationsEnabled于API 19+有效
// API 19-返true(默开)
return manager.areNotificationsEnabled();
}
/**
* 设置通知
*
* @param context 上下文
*/
public static void setNotification(Context context) {
Intent intent = new Intent();
// 跳通知设置页
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
intent.setAction(Settings.ACTION_APP_NOTIFICATION_SETTINGS);
intent.putExtra(Settings.EXTRA_APP_PACKAGE, context.getPackageName());
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");
intent.putExtra("app_package", context.getPackageName());
intent.putExtra("app_uid", context.getApplicationInfo().uid);
} else if (android.os.Build.VERSION.SDK_INT == Build.VERSION_CODES.KITKAT) {
intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.setData(Uri.parse("package:" + context.getPackageName()));
} else {
// 4.4-无跳通知设置页Action(可跳应用详情页)
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS");
intent.setData(Uri.fromParts("package", context.getPackageName(), null));
}
context.startActivity(intent);
}
}