Notification通知创建
Notification通知创建
由于通知是一个远程视图,所以创建通知在状态栏显示需要用到三个主要的对象:
一、PendingIntent对象,用来承载Intent对象的,Intent对象主要是定义通知的意图去向
二、Notification对象,该对象需要借助NotificationCompat 子类Build的对象通过build()方法获得。
三、NotificationManger服务对象,该对象的主要作用是将notification对象发送通过notify()方法
Intent intent , intent, );
第二步:创建通知对象notificaton,而notificaton对象需要Builder对象来建立,所以创建Builder对象,并利用该对象设置通知的各种信息
NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
builder.setAutoCancel(true);// 打开该通知,通知自动消失
builder.setTicker("有新的消息,注意查收!!");// 设置显示在状态栏的通知提示信息
Bitmap bitmap = BitmapFactory.decodeResource(this.getResources(), R.drawable.notification);
builder.setLargeIcon(bitmap);// 设置通知栏中的通知下拉后显示的图标,图片格式为bitmap型
builder.setSmallIcon(R.drawable.icon);// 设置通知图标
builder.setContentTitle("样式通知");// 设置通知内容的标题
builder.setContentText("恭喜您,您被录取了,请于下周一前来报道!!");// 设置通知的内容
builder.setContentIntent(pi1);// 设置点击通知将要启动的Inent
// 利用builder对象建立通知对象notificaton,通过build()方法
android.app.Notification notification = builder.build();
// 第三步:利用系统的NotificationManager服务发送通知,通过getSystemService()获取系统的NotificationManager服务
NotificationManager nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
nm.notify(NOTIFICATION_ID, notification);
// 创建通知对象notification,该对象那需要build对象来简介建立
NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
builder.setSmallIcon(R.drawable.notice);
builder.setAutoCancel(true);// 打开该通知,通知自动消失
builder.setTicker("有新的消息,注意查收!!");// 设置显示在状态栏的通知提示信息
// 加载自定义通知布局样式,也就是这里不用在通过builder对象来设置通知信息,xml文件已经定义好!!
// 由于通知是一个远程视图,所以必须通过RemoteViews对象获取xml文件并形成通知视图
RemoteViews remoteViews = new RemoteViews(this.getApplication().getPackageName(), R.layout.notification);
// 然后将远程视图利用setContent()设置到通知中去显示
builder.setContent(remoteViews);
builder.setContentIntent(pi2);// 设置点击通知将要启动的Inent
// 利用builder对象建立通知对象notificaton,通过build()方法
android.app.Notification notification = builder.build();
// 通过getSystemService()获取系统的NotificationManager服务,在发送通知
NotificationManager nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
nm.notify(MY_NOTIFICATION_ID, notification);
Notification通知创建的更多相关文章
- iOS - Notification 通知
1.Notification 通知中心实际上是在程序内部提供了消息广播的一种机制,它允许我们在低程度耦合的情况下,满足控制器与一个任意的对象进行通信的目的.每一个 iOS 程序(即每一个进程)都有一个 ...
- Android Notification通知详细解释
Android Notification通知具体解释 Notification: (一).简单介绍: 显示在手机状态栏的通知. Notification所代表的是一种具有全局效果的通 ...
- 配置 SQL Server Email 发送以及 Job 的 Notification通知功能
配置 SQL Server Email 发送以及 Job 的 Notification通知功能 在与数据库相关的项目中, 比如像数据库维护, 性能警报, 程序出错警报或通知都会使用到在 SQL Ser ...
- Android开发——Notification通知的使用及NotificationCopat.Builder常用设置API
想要看全部设置的请看这一篇 [转]NotificationCopat.Builder全部设置 常用设置: 设置属性 说明 setAutoCancel(boolean autocancel) 设置点击信 ...
- 适配 通知 Notification 通知渠道 前台服务 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- Android Notification通知简介
Android Notification通知简介 根据activity的生命周期,在activity不显示时,会执行onStop函数(比如按下home键),所以你在onStop函数(按退出键除外)里面 ...
- [iOS基础控件 - 6.10] Notification 通知机制
A.定义 iOS程序都有一个NSNotificationCenter的单例对象,用来负责发布不同对象之间的通知 任何对象都能够在NSNotificationCenter发布通知,发 ...
- Notification (通知)的 新版和旧版用法
Notification (通知)的 新版和旧版用法 一.先来看旧版,Api 11 之前的用法: NotificationManager manager = (NotificationManage ...
- Android开发——Notification通知的各种Style详解
本来是想与之前讲解使用Notification通知使用一起写的,查看了资料,觉得有必要将这Style部分单独拿出来讲解 前篇:Android开发——Notification通知的使用及Notifica ...
随机推荐
- SAP云平台架构概述
在我们开始SAP云平台的架构之旅之前,让我们先看看SAP已经发布的一些其他云产品.这些云产品方案可以分为公有云和私有云两种. SAP公有云解决方案见下图最右侧,比较著名的有SAP SuccessFac ...
- SEO 第八章
SEO第八章 本次课目标: 1. 网站外部优化的外链优化 2. 网站流量分析 1. 什么叫做外链? 外链也叫反向链接,指的是从别的网站指向我自己的网站的链接. 2. 外链的作用? l 外链可 ...
- (转)使用JDK中的Proxy技术实现AOP功能
http://blog.csdn.net/yerenyuan_pku/article/details/52863780 AOP技术在企业开发中或多或少都会用到,但用的最多的大概就是做权限系统时,在做权 ...
- (转)编码剖析@Resource注解的实现原理
http://blog.csdn.net/yerenyuan_pku/article/details/52860046 上文我们已经学会使用@Resource注解注入属性.学是学会了,但也仅限于会使用 ...
- swift的static和class修饰符---What is the difference between static func and class func in Swift?
Special Kinds of Methods Methods associated with a type rather than an instance of a type must be ma ...
- mysql 表锁死的问题
select * from information_schema.innodb_trx; kill 34863;kill 34856;kill 34860;kill 34859;kill 34845; ...
- CPP-STL:list容器
本文以List容器为例子,介绍了STL的基本内容,从容器到迭代器,再到普通函数,而且例子丰富,通俗易懂.不失为STL的入门文章,新手不容错过! 目录 1 定义一个list 2 使用list的成员函数p ...
- QT_3
1.QT中命名的规范和常用的快捷键 1.1 命名规范: 类名:首字母大写 多个单词时单词与单词之间首 字母大写 函数名:变量名称 首字母小写 多个单词时,单词和单词之间首字母大写 1. ...
- 日常[splay]:水题记——普通平衡树(死亡调试)
普通平衡树,模板的不能再模板的模板题.我调了两个小时... 早先看yyb大神的blog学习splay,看的风生水起然而没有发现,大神的坑没有填……没有rank操作和k_th操作. 只能自己摸索,问问大 ...
- windows10用WMware安装Linux虚拟机详细步骤
windows10用WMware安装Linux虚拟机详细步骤 一.安装环境 windows10操作系统物理机VMware Workstation 软件(可以在网上下载)CentOS6.9镜像文件( ...