Android中的通知功能Notification具体实现过程

Android中的通知功能Notification具体实现过程

通知的定义

通知(Notification)是Android中服务(Service)与用户进行交互的一种方式。

如何发生一个简单的通知?

(1)获取NotificationManager通知管理器
(2)构建Notification对象:
使用Notification.Builder构建器构建对象.
Builder builder = new Builder();
builder.setXXX().setXXX().build();
(3)调用manager.notify()方法发送该通知。

发送通知的例子:

private static final int NOTIFICATION_ID = 1001;
private void sendNotification() {
        //1、NotificationManager
        NotificationManager manager = (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
        /** 2、Builder->Notification
         *  必要属性有三项
         *  小图标,通过 setSmallIcon() 方法设置
         *  标题,通过 setContentTitle() 方法设置
         *  内容,通过 setContentText() 方法设置
         * */
        Notification.Builder builder = new Notification.Builder(this);
        builder.setContentInfo("Content info")
                .setContentText("Content text")//设置通知内容
                .setContentTitle("Content title")//设置通知标题
                .setLargeIcon(BitmapFactory.decodeResource(getResources(),R.mipmap.ic_launcher))
                .setSmallIcon(R.mipmap.ic_launcher_round)//不能缺少的一个属性
                .setSubText("Subtext")
                .setTicker("滚动消息......")
                .setWhen(System.currentTimeMillis());//设置通知时间,默认为系统发出通知的时间,通常不用设置
        Notification n = builder.build();
        //3、manager.notify()
        manager.notify(NOTIFICATION_ID,n);
}

运行效果:

Android中的通知功能Notification具体实现过程

上一篇:Android P Notification(3) 之 Fullscreen intent被拦截


下一篇:Android8.1 SystemUI源码分析之 Notification流程