Android关于Notification.Builder的使用
来源:互联网 发布:js实现图片3d自动旋转 编辑:程序博客网 时间:2024/05/01 16:50
在android3.0之后,Android的通知与之前的版本有所区别。为了更好的使用,androidSDK引入了Android.app.Notificition.Builder这个类。这样就与之前使用发生了变化。那就说一下在Android3.0之后Notificaition的使用
public class NotifyTest extends Activity{
private NotificationManager mgr = null;//通过通知管理器来实现通知操作
int count = 0; //有时service会发出多条通知,我们用一个计数器来模拟不同的通知
private static final int NOTIFY_ME_ID=1337; //通知管理器通过通知ID来标识不同的通知,创建和删除通知是需要提供通知号。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.notify_test);
//步骤1:在Android进行通知处理,首先需要重系统哪里获得通知管理器NotificationManager,它是一个系统Service。
mgr = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
}
public void notifyMe(View v){
count ++; //这是通知的序列号,每按一次button,模拟一条新的通知
//步骤2:创建一个PendingIntent,和Intent类似,不同的是由于不是马上调用,需要在下拉状态条是出发的activity,所以采用的是PendingIntent
PendingIntent i = PendingIntent.getActivity(this, 0, new Intent(this,NotifyMessage.class), 0);
//步骤3:通过Notification.Builder来创建通知,注意这是在API Level 11之后才支持,如果要兼容Android 2.x的版本,可以看后面注释内的代码
Notification myNotify = new Notification.Builder(this)
.setSmallIcon(R.drawable.note) //设置状态栏中的小图片,尺寸一般建议在24×24,这个图片同样也是在下拉状态栏中所显示,如果在那里需要更换更大的图片,可以使用setLargeIcon(Bitmap icon)
.setTicker("Ticker:"+count)//设置在status bar上显示的提示文字
.setContentTitle("Title:" + count)//设置在下拉status bar后Activity,本例子中的NotififyMessage的TextView中显示的标题
.setContentText("Notification Text" + count)//TextView中显示的详细内容
.setContentIntent(i) //关联PendingIntent