2012-04-03 75 views
4

我将不同的通知发布到通知栏。如何在活动结束时避免清除通知

所有人都有不同的ID,但目的是针对相同的活动。

当我点击第一次通知时,活动开始并点击完成。

当我的活动结束后,酒吧中的所有剩余通知正在消失。

我希望他们留在通知栏上。

如何实现此目的。

这里是代码。

 mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); 
         int id = 10; 
         notificationIntent = new Intent(context, MyAct.class); // creating intent. 
         notificationIntent.putExtra("data", data); 
         notificationIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);   

         // defining actions while notification. 
         contentIntent = PendingIntent.getActivity(context, id,notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);    
         notification = new Notification(R.drawable.icon, message, 
           System.currentTimeMillis()); 
         notification.setLatestEventInfo(context, "Hello", message, 
           contentIntent); 

         notification.defaults |= Notification.DEFAULT_VIBRATE; 
         notification.defaults |= Notification.DEFAULT_LIGHTS; 
         notification.defaults |= Notification.DEFAULT_SOUND; 
         mNotificationManager.notify(id, notification); 
         id++; 

在此先感谢....!

回答

3

的方法onNewIntent你需要下面的属性添加到活动清单文件中的状态栏尝试。

 android:launchMode="singleTask" 
     android:taskAffinity="" 
     android:excludeFromRecents="true" 
0

听起来像您错误地创建了通知。我建议你重新阅读Notification.Builder类的javadoc,看看你做错了什么。您可能忽略了调用setAutoCancel(),或者您重新使用同一个对象来发布通知。

+0

我手动取消基于id的活动中的通知。 – Noby 2012-04-03 21:08:45