Android添加通知到顶部任务栏
public class NotificationtestActivity extends Activity {   
    private static final int ID = 1213;   
    private static final String KEY_COUNT="keyCount";   
    private int count;   
    @Override   
    public void onCreate(Bundle savedInstanceState) {   
        super.onCreate(savedInstanceState);   
        setContentView(R.layout.main);   
        Intent intent=this.getIntent();   
        count=intent.getIntExtra(KEY_COUNT,0);           
          
        this.setTitle("这是第"+Integer.toString(count)+"个");   
           
        Button btn=(Button) this.findViewById(R.id.button1);   
        btn.setOnClickListener(new View.OnClickListener() {   
               
            @Override   
            public void onClick(View v) {   
                AddNotification();   
                NotificationtestActivity.this.finish();   
            }   
        });   
    }   
    /**  
    * 添加顶部通知  
    * @author liuzhao  
    */   
    public void AddNotification(){   
        count++;   
        //添加通知到顶部任务栏    
        //获得NotificationManager实例    
        String service = NOTIFICATION_SERVICE;   
        NotificationManager nm = (NotificationManager)getSystemService(service);   
        //实例化Notification    
        Notification n = new Notification();   
        //设置显示图标    
        int icon = R.drawable.icon;   
        //设置提示信息    
        String tickerText ="我的程序";   
        //显示时间    
        long when = System.currentTimeMillis();   
            
        n.icon = icon;   
        n.tickerText = tickerText;   
        n.when = when;   
        //显示在“正在进行中”    
        //  n.flags = Notification.FLAG_ONGOING_EVENT;    
        n.flags|=Notification.FLAG_AUTO_CANCEL; //自动终止    
        //实例化Intent    
        Intent it = new Intent(this,NotificationtestActivity.class);   
        it.putExtra(KEY_COUNT, count);   
        /*********************  
         *获得PendingIntent    
         *FLAG_CANCEL_CURRENT:  
         *      如果当前系统中已经存在一个相同的PendingIntent对象,  
         *      那么就将先将已有的PendingIntent取消,然后重新生成一个PendingIntent对象。   
         *FLAG_NO_CREATE:  
         *      如果当前系统中不存在相同的PendingIntent对象,  
         *      系统将不会创建该PendingIntent对象而是直接返回null。   
         *FLAG_ONE_SHOT:  
         *      该PendingIntent只作用一次,  
         *      如果该PendingIntent对象已经触发过一次,  
         *      那么下次再获取该PendingIntent并且再触发时,  
         *      系统将会返回一个SendIntentException,在使用这个标志的时候一定要注意哦。   
         *FLAG_UPDATE_CURRENT:  
         *      如果系统中已存在该PendingIntent对象,  
         *      那么系统将保留该PendingIntent对象,  
         *      但是会使用新的Intent来更新之前PendingIntent中的Intent对象数据,  
         *      例如更新Intent中的Extras。这个非常有用,  
         *      例如之前提到的,我们需要在每次更新之后更新Intent中的Extras数据,  
         *      达到在不同时机传递给MainActivity不同的参数,实现不同的效果。   
         *********************/   
            
        PendingIntent pi = PendingIntent.getActivity(this, 0, it, PendingIntent.FLAG_UPDATE_CURRENT);   
           
        //设置事件信息,显示在拉开的里面    
        n.setLatestEventInfo(NotificationtestActivity.this,"我的软件"+Integer.toString(count), "我的软件正在运行……", pi);   
        
        //发出通知    
        nm.notify(ID,n);   
    }   
}      
