Notification介绍
Notification是一种让你的应用程序在不使用Activity的情况下警示用户。Notification由NotificationManger统一管理,目前包含的能力有:
❑ 创建一个状态条图标。
❑在扩展的状态条窗口中显示额外的信息(和启动一个Intent)。
❑ 闪灯或LED。
❑ 电话震动。
❑ 发出听得见的警告声(铃声,保存的声音文件)。
Notification是看不见的程序组件(Broadcast Receiver,Service和不活跃的Activity)警示用户有需要注意的事件发生的最好途径。
作为UI部分,Notification对移动设备来说是最适合不过的了。用户可能随时都带着手机在身边,但不会随时都关心它或者程序。一般来说,用户会在后台打开几个程序,但他们不会注意它们。
在这样的情形下,当发生需要注意的事件时,能够通知用户是很重要的。
Notification可以通过紧急的重复或者(最常用)在状态条使用一个图标来通知用户。状态条图标可以正常的更新或者通过扩展的状态条窗口来显示额外的信息,如图8-3所示。
图 8-3
显示扩展的状态条窗口,点击状态条图标并将其拖到屏幕底部。“锁定”位置,确保你在松开拖拽前窗口已经覆盖整个屏幕。隐藏它,简单的拖回去即可。
NotificationManager介绍
NotificationManager是一个系统服务,用于处理Notification。使用getSystemService方法可以得到它的一个引用,如下面的代码所示:
String svcName = Context.NOTIFICATION_SERVICE;
NotificationManager notificationManager;
notificationManager = (NotificationManager)getSystemService(svcName);
使用NotificationManager,你可以触发新的Notification,修改已经存在的或者移除那些不再需要或想要的Notification。