设为首页 加入收藏

TOP

Android中通知的使用-----Notification详解
2014-11-24 14:37:01 来源: 作者: 【 】 浏览:3
Tags:Android 通知 使用 -----Notification 详解


一般来说, 一个Notification应该传送的消息包括:


1 、一个状态条图标


2、在拉伸的状态栏窗口中显示额外的信息和启动一个Application的Intent


3、闪灯或LED


4、电话震动



在状态栏(Status Bar)中,通知主要有两类(使用FLAG_标记,后面讲解到):



1、正在运行的事件


2、通知事件



Notification图解如下:





常量


//表示发送一个Notification的所携带的效果


DEFAULT_ALL 使用默认字段


DEFAULT_LIGHTS 默认闪光


DEFAULT_SOUND 默认声音(uri,指向路径)


DEFAULT_VIRATE 默认震动



PS:以上的效果常量可以累加,即通过mNotifaction.defaults |=DEFAULT_SOUND (有些效果只能在真机上才有,比如震动)


//设置Flag位


FLAG_AUTO_CANCEL 该通知能被状态栏的清除按钮给清除掉


FLAG_NO_CLEAR 该通知能被状态栏的清除按钮给清除掉


FLAG_ONGOING_EVENT 通知放置在正在运行



常用字段:


contentIntent 设置PendingIntent对象,点击时发送该Intent


flags 设置flag位,例如FLAG_NO_CLEAR等


defaults 添加效果


tickerText 显示在状态栏中的文字


when 发送此通知的时间戳


icon 设置图标



常用方法介绍


void setLatestEventInfo(Context context , CharSequence contentTitle,CharSequence contentText,PendingIntent contentIntent)



功能: 显示在拉伸状态栏中的Notification属性,点击后将发送PendingIntent对象


参数: context 上下文环境


contentTitle 状态栏中的大标题


contentText 状态栏中的小标题


contentIntent 点击后将发送PendingIntent对象



另外的就是Notification的几步不同构造方法了,其构造方法的参数含义如上,请参考SDK 。



注意:当我们创造了一个Notification对象时,一定要为其设置setLatestEventInfo()方法,否则程序会报错 .




前面我们说过,NotificationManager是所有Notification的大管家,它的主要职责是加入/移除Notification。


通过获取系统服务来获取该对象:


NotificationManager mNotificationManager = (NotificationManager)getSystemServic(Context.NOTIFICATION_SERVICE) ;



常用方法:


public void cancelAll() 移除所有通知 (只是针对当前Context下的Notification)


public void cancel(int id) 移除标记为id的通知 (只是针对当前Context下的所有Notification)


public void notify(String tag ,int id, Notification notification) 将通知加入状态栏, 标签为tag,标记为id


public void notify(int id, Notification notification) 将通知加入状态栏,,标记为id



Demo如下:


简单的写一个Notification的类,对通知上面所讲解的知识有一定的认知 。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android中View绘制流程以及invali.. 下一篇编译运行在omap4430平台的Android..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: