这一节学习如何实现Android的消息通知,显示在消息栏中。具体的方法如下:
1:创建新的项目,Notifications,根据书中所示创建; 2:提示的界面我们做下布局文件: 3:提示界面打开之后,我们就取消消息的通知,因为消息已经读过了,没必要再显示在通知栏里面了,调用NotificationManager对象的cancel方法来取消; 4:下面我们在app的主界面布局文件放入一个按钮,然后加入click处理函数;
好了,总结下我们创建消息通知的步骤:
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。
文章的脚注信息由WordPress的wp-posturl插件自动生成