Android下Notification(通知栏)的使用

使用Notification的好处:在我们的android应用程序返回到主界面或其它的时候,我们可以在android系统的通知栏上面点击指定的图标开启指定的应用。好比android版的手机QQ一样,返回到主界面或其它界面时,会在通知栏上出现一个QQ的图标,这里实现的就是这种功能。

下面给出一个简单的小列子,大家也可以将这个列子提取为公共的类,这样也方便维护

public class NotificationActivity extends Activity {
 //声明通知(消息)管理器 
 NotificationManager m_NotificationManager;
 Intent  m_Intent;
 PendingIntent m_PendingIntent;
 //声明Notification对象
 Notification  m_Notification;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  // TODO Auto-generated method stub
  super.onCreate(savedInstanceState);
  setContentView(R.layout.notification);
  //初始化NotificationManager对象 
  m_NotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
 }
 
 public void click(View view){
  switch (view.getId()) {
  case R.id.btn_notification_start:
   showNotification();
   break;
  case R.id.btn_notification_end:
   cancelNotification();
   break;
  default:
   break;
  }
 }
 /** 设置 */
 private void showNotification(){ 
  //点击通知时转移内容 
  //Intent intent = new Intent(this, this.getClass());
  //intent.addCategory(WINDOW_SERVICE);
  //主要是设置点击通知时显示内容的类 
  m_PendingIntent = PendingIntent.getActivity(NotificationActivity.this, 0, getIntent(), 0); //如果转移内容则用m_Intent();
  //构造Notification对象 
  m_Notification = new Notification(); 
  //设置通知在状态栏显示的图标 
  m_Notification.icon = R.drawable.icon;
  //当我们点击通知时显示的内容 
  m_Notification.tickerText = "开始登陆系统..........."; 
  //通知时发出默认的声音 
  m_Notification.defaults = Notification.DEFAULT_SOUND; 
  //设置通知显示的参数 
  m_Notification.setLatestEventInfo(NotificationActivity.this, "MyIMSYS", "登陆通知", m_PendingIntent); 
  //可以理解为执行这个通知 
  m_NotificationManager.notify(0, m_Notification); 
 }
 /** 取消 */
 private void cancelNotification(){
  m_NotificationManager.cancelAll();
 }

你可能感兴趣的:(android,notification)