zoukankan      html  css  js  c++  java
  • NotificationChannel

     
    通知渠道的引入可以很方便的管理,和归纳同一种类型的Notification。以前多个通知 ,无论是不是同一个应用的通知,逐个排列下来,占满了屏幕,不太友好。
    1. 相同通知渠道的通知已经被合并,而不是一一全部展开。
    2. 如果你的项目TargetSDK26以上,那么你在使用Notification的时候必须指定一个ChannelId,否则当然会报错
    3. 下面是Android 8.0上通知渠道NotificationChannel 的使用代码段,注意点需要传入CHANNEL_ID(随意指定),CHANNEL_NAME(随意指定)
        public static NotificationManager notificationManager;
        public static String CHANNEL_1 = "channel1";
    
        public static void init(Context context){
            notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
            if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
           ////配置通知渠道id,渠道名称(用户可以看到),渠道优先级 NotificationChannel channel1
    = new NotificationChannel(CHANNEL_1,"通知渠道1", NotificationManager.IMPORTANCE_HIGH); channel1.setDescription("通知渠道的描述1"); ///配置通知出现时的闪灯(如果 android 设备支持的话)
           channel1.enableLights(
    true); channel1.setLightColor(Color.WHITE);
           
    //配置通知出现时的震动(如果 android 设备支持的话)
    channel1.enableVibration(true);
    channel1.setVibrationPattern(new long[]{100, 200, 100, 200});
    //channel.setBypassDnd(true); //设置绕过免打扰模式
    //channel.canBypassDnd(); //检测是否绕过免打扰模式
    //channel.setLockscreenVisibility(Notification.VISIBILITY_SECRET);//设置在锁屏界面上显示这条通知

              notificationManager.createNotificationChannel(channel1);

            }

        }

    可以通过notificationManager.deleteNotificationChannel(String channelId)去删除指定channelId的渠道。

    更多设置可百度相关需求

  • 相关阅读:
    winform treeview checkbox递归算法利用
    转载10种代码风格
    Canvas没有添加Background,点击就不在Canvas上?
    数据库安装文件制作(C#)
    Panel的公有属性Background
    Teechar 常用属性
    NHibernate
    解决:请购买WinRAR许可,您注册还剩下40天(WinRAR老是弹出烦人的对话框)
    在WinForm中用Visifire实现数据统计转自蓝月天南
    【转】TeeChart的用法
  • 原文地址:https://www.cnblogs.com/yangjj08/p/10279169.html
Copyright © 2011-2022 走看看