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的渠道。

    更多设置可百度相关需求

  • 相关阅读:
    日志模块
    DDT数据驱动
    unittest测试框架
    vim编辑器
    文件夹的管理
    文件内容查看(如查看日志)
    文件的移动和拷贝
    文件的增删改查
    linux基本命令
    测试5--模拟一个在控制台不断按时分秒打印的电子表
  • 原文地址:https://www.cnblogs.com/yangjj08/p/10279169.html
Copyright © 2011-2022 走看看