在我的申请中,我有两个主要活动:
MainActivity和MessagesActivity
单击通知并且应用程序未运行时,我希望它启动MainActivity。但是,当应用程序正在运行并且MessagesActivity在视图中时,我希望当用户单击通知以某种方式接收意图数据时。
我创建了这样的通知:
NotificationManager notificationManager = (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
Intent notificationIntent = new Intent(context, MainActivity.class);
notificationIntent.putExtra(MESSAGE_KEY, receivedMessage);
notificationIntent.putExtra(MESSAGE_ID_KEY, receivedMessageId);
int requestID = (int) System.currentTimeMillis();
PendingIntent contentIntent = PendingIntent.getActivity(context, requestID, notificationIntent, PendingIntent.FLAG_ONE_SHOT, intent.getExtras());
Notification notification = new Notification.Builder(context)
....build();
notificationManager.notify(requestID, notification);
我已经尝试过使用其他标志,launchModes等。如果它只是一个活动但是当应用程序在MainActivity或MessagesActivity中运行时从未调用onNewIntent时,这不会有问题