我希望能够发出通知,提醒用户有关已完成的计时器,但是当您点击通知时我不希望有意图。
我尝试传入null for intent
String ns = Context.NOTIFICATION_SERVICE;
NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(ns);
int icon = R.drawable.icon;
CharSequence tickerText = "Hello";
long when = System.currentTimeMillis();
Notification notification = new Notification(icon, tickerText, when);
CharSequence contentTitle = "My notification";
CharSequence contentText = "Hello World!";
notification.setLatestEventInfo(context, contentTitle, contentText, null);
mNotificationManager.notify(HELLO_ID, notification);
答案 0 :(得分:76)
您可以传递参数
PendingIntent.getActivity(getApplicationContext(), 0, new Intent(), 0)
而不是
null
在
notification.setLatestEventInfo(context, contentTitle, contentText, null);
答案 1 :(得分:9)
setLatestEventInfo()
中的最后一个参数是PendingIntent
,而不是Intent
。如果您需要通知在tapped时不执行任何操作,则传递空PendingIntent,如下所示:PendingIntent.getActivity(context,0,null,0)。
答案 2 :(得分:1)
有趣的问题,我想看看这是否有效。我做了一点挖掘,发现很多人问同样的问题。 cbursk似乎找到了一个hack来获得这个预期的功能,即将Dialog传递给通知意图而不是Activity。我猜这个Dialog什么也没做,或者被编程为马上解雇自己,不确定。但是我现在looking at this thread并且要测试它。