COCO的android学习之路第2章(9)—Android实现消息通知

原创文章,转载请注明: 转载自勤奋的小青蛙
本文链接地址: COCO的android学习之路第2章(9)—Android实现消息通知

这一节学习如何实现Android的消息通知,显示在消息栏中。具体的方法如下:

1:创建新的项目,Notifications,根据书中所示创建;1 2:提示的界面我们做下布局文件:2 3:提示界面打开之后,我们就取消消息的通知,因为消息已经读过了,没必要再显示在通知栏里面了,调用NotificationManager对象的cancel方法来取消;3 4:下面我们在app的主界面布局文件放入一个按钮,然后加入click处理函数;4 5

5:然后创建之后,我们点击运行即可看到如下所示的效果。notification

 

好了,总结下我们创建消息通知的步骤:

1:首先创建好消息详情的界面,并且在界面要取消已查看过的消息通知;

2:创建消息通知主要是通过:

Intent i = new Intent(this, NotificationView.class);
i.putExtra("notificationID", notificationID);

创建一个Intent对象,然后将notificationID放入Intent对象中,因为在消息详情界面,我们会通过这个notificationID取消已读过的消息仍然显示在消息栏中;

创建一个PendingIntent用来推送消息,无论当我们的手应用程序是运行或者未运行状态,这个PendingIntent创建的对象始终会推送出来:

PendingIntent pendingIntent =
PendingIntent.getActivity(this, 0, i, 0);

然后我们创建一个通知消息管理对象以及一个通知消息对象:

NotificationManager nm = (NotificationManager)
getSystemService(NOTIFICATION_SERVICE);
Notification notif = new Notification(
R.drawable.ic_launcher,
“Reminder: Meeting starts in 5 minutes”,
System.currentTimeMillis());

然后我们可以具体设置下消息在消息栏中的具体内容:

CharSequence from = “System Alarm”;
CharSequence message = “Meeting with customer at 3pm...”;
notif.setLatestEventInfo(this, from, message, pendingIntent);

最后我们便可以把这个消息发出去,通过通知消息管理对象:

nm.notify(notificationID, notif);

如果当我们在第一步骤中看完消息推送的界面的话,通过cancel的方法,便会取消掉notificationID的这个消息通知。

学完本节,需要掌握:

1:学会使用消息通知;

2:理解PendingIntent以及NotificationManager。

原创文章,转载请注明: 转载自勤奋的小青蛙
本文链接地址: COCO的android学习之路第2章(9)—Android实现消息通知

文章的脚注信息由WordPress的wp-posturl插件自动生成



|2|left
打赏

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: