• Android Notification 学习笔记(普通通知+可操作通知)


    Notification

    实现通知

    1. 创建一个NotificationManager

      • NotificationManager类是一个通知管理器类,该对象以单例模式方式获得
      • 是一个系统服务,即可以通过Activity.getSystemService(String)方法获取Context.NOtifICAtiON_SERVICE来返回到NotificationManager
      manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);//创建一个NotificationManager
      
      • 1
    2. 使用Builder构造器来创建Notification对象

      • 可以保证程序在所有的版本上都能正常工作
      • 通过链式结构来设置Notification的属性
        • setContentTitle(String string) 标题
        • setContentText(String string) 文本内容
        • setSmallIcon(int icon) 小图标
        • setLargeIcon(Bitmap icon) 大图标
        • setContentIntent(PendingIntent intent) 跳转事件
        • setAutoCancel(boolean) 点击后自动清除通知
        //Notification notification =new NotificationCompat.Builder(context,channelId).build();
               notification = new NotificationCompat.Builder(this, "zgs")
                    .setContentTitle("zgs设置的通知")//设置标题
                    .setContentText("点击通知进入登录界面")//设置文本内容
                    .setSmallIcon(R.drawable.ic_baseline_favorite_border_24)//设置小图标
                    .setColor(Color.parseColor("#ff0222"))//设置小图标颜色
                    .setLargeIcon(BitmapFactory.decodeResource(getResources(), R.drawable.bairen))//设置大图标
                    .setContentIntent(pendingIntent)//跳转事件
                    .setAutoCancel(true)//点击后消失
                    .build();
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    1. NotificationChanel 通知渠道

      • Android 8.0引入的功能
      • NotificationManager类中通知的重要程度(从低到高):
        • IMPORTANCE_NONE:关闭通知
        • IMPORTANCE_MIN:开启通知,不会弹出,没有提示音,状态栏中无显示
        • IMPORTANCE_LOW:开启通知,不会弹出,没有提示音,状态栏中显示
        • IMPORTANCE_DEFAULT:开启通知,不会弹出,发出提示音,状态栏中显示
        • IMPORTANCE_HiGH:开启通知,会弹出,发出提示音,状态栏中显示
      if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
           //版本判断:8.0版本以上才用得到
          channel = new NotificationChannel
              ("zgs", "NotificationText", NotificationManager.IMPORTANCE_HIGH);
              manager.createNotificationChannel(channel);
          }
          
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
  • 相关阅读:
    循环神经网络RNN、RNNCell、GRUCell
    好用到爆!GitHub 星标 32.5k+的命令行软件管理神器,功能真心强大!
    kettle连接达梦资源库-达梦资源库初始化SQL
    昨天阅读量646
    kettle 9.2源码打包和idea环境启动及常见错误
    c++数据结构:图(邻接矩阵)
    VBA驱动SAP GUI实现办公自动化(一)
    java中的全局异常捕获
    m基于Simulink的高速跳频通信系统抗干扰性能分析
    贝锐花生壳+Fooocus,快速自建可远程访问的SDXL,平替Midjourney
  • 原文地址:https://blog.csdn.net/mosun_zgs/article/details/127426245