Android 将所选数据从通知传递给另一个活动

Android 将所选数据从通知传递给另一个活动,android,Android,我收到如下通知。 通知1 通知2 通知3 通知1 通知2 当用户按下时,通知1。通知1必须发送到另一个活动 当用户按下时,通知2。通知2必须发送到另一个活动 任何帮助以字符串形式保存通知数据,并在单击事件的下一个活动中使用意图传递它 请参阅参考资料:您必须使用PendingEvent在单击通知时打开活动 首先创建一个应该在PendingEvent中使用的公共活动 并通过intent.putStringkey,notification1或intent.putStringkey,notificati

我收到如下通知。 通知1 通知2 通知3 通知1 通知2

当用户按下时,通知1。通知1必须发送到另一个活动

当用户按下时,通知2。通知2必须发送到另一个活动


任何帮助

以字符串形式保存通知数据,并在单击事件的下一个活动中使用意图传递它

请参阅参考资料:

您必须使用PendingEvent在单击通知时打开活动

首先创建一个应该在PendingEvent中使用的公共活动

并通过intent.putStringkey,notification1或intent.putStringkey,notification2在挂起的内容上设置一些相同的字符串

在那个常见的活动中,获取传递的字符串。不,根据您的相同数据开始您的活动


就是这样。

一个操作将用户从通知直接带到应用程序中的某个活动,用户可以查看导致通知的事件或进行进一步的工作。在通知中,操作本身由PendingEvent定义,该PendingEvent包含启动应用程序中活动的意图

如何构建PendingEvent取决于您开始的活动类型。从通知启动活动时,必须保留用户预期的导航体验。设计通知的一部分是保留用户预期的导航体验。通常有两种情况:

常规-您正在启动属于应用程序正常工作流一部分的活动 特殊-如果此活动是从通知启动的,则用户只能看到此活动。从某种意义上说,活动通过提供通知本身难以显示的信息来扩展通知。
这就是您的答案,您可以使用共享优先权作为中间人来存储将您的激活链接到每个活动的小信息。

附加带有注释的片段-

NotificationManager mNotificationManager = (NotificationManager)
                this.getSystemService(Context.NOTIFICATION_SERVICE);

        Intent intent = new Intent(this, HomeActivity.class); // Redirected to HomeActivity
        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

        int _notificationId = (int) System.currentTimeMillis();
        String _message = remoteMessage.get("text");

        intent.putExtra(KEY_NOTIF_ID, _notificationId);

        PendingIntent contentIntent = PendingIntent.getActivity(this, 0,
                intent, PendingIntent.FLAG_UPDATE_CURRENT);

        NotificationCompat.Builder mBuilder =
                (NotificationCompat.Builder) new NotificationCompat.Builder(this)
                        .setSmallIcon(R.drawable.ic_notification_small) // Providing and icon
                        .setAutoCancel(true) // AutoCancelable
                        .setContentTitle(getResources().getString(R.string.app_name)) // Title
                        .setStyle(new NotificationCompat.BigTextStyle()
                                .bigText(_message))
                        .setContentText(_message) // Message
                        .setContentIntent(contentIntent); // This will the intent to start an activity once Notification is clicked
        mNotificationManager.notify(_notificationId /* ID of notification */, mBuilder.build());

请注意:根据您的要求,这里有一份完整的文档。