我不希望通知管理器打开活动

时间:2012-05-29 07:36:41

标签: android notificationmanager

我不希望通知管理器(状态栏)打开活动。相反,当点击通知时,它会被取消,并且不会发生任何事情。

3 个答案:

答案 0 :(得分:4)

创建PendingIntent时,传递一个空的Intent new Intent()

PendingIntent pending = PendingIntent.getActivity(getApplicationContext(), 0, new Intent(), 0)

并设置通知的FLAG_AUTO_CANCEL标志

notification.flags |= Notification.FLAG_AUTO_CANCEL;

答案 1 :(得分:4)

final NotificationManager notificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
final Notification notification = new Notification(R.drawable.icon,"A New Message!",System.currentTimeMillis());

notification.defaults=Notification.FLAG_ONLY_ALERT_ONCE+Notification.FLAG_AUTO_CANCEL;
Intent notificationIntent = new Intent(this, null);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0,notificationIntent, 0);

notification.setLatestEventInfo(AndroidNotifications.this, title,message, pendingIntent);
notificationManager.notify(NOTIFICATION_ID, notification);

不是在intent中传递类,而是传递null或使用intent()默认构造函数。 如果有帮助欣赏

答案 2 :(得分:0)

创建一个从finish()调用onCreate()的空活动,并将其设置在PendingIntent中。不允许空(空),所以这是你最好的选择,AFAIK。