单击通知图标时的android通知

单击通知图标时的android通知,android,notifications,android-pendingintent,Android,Notifications,Android Pendingintent,我这样写我的通知意图(下面的片段)。我正在进行活动A、B和C。在运行C时,我按下主屏幕,很快就收到了一个通知。我按下了通知图标,希望从活动A重新启动应用程序,但不幸的是它没有。当前代码所做的是在堆栈顶部创建一个新的活动a。。。。因此,我不得不执行以下运行活动(或堆栈):A、B、C、A 因此,我的主要问题是,如何清理活动堆栈,以便在单击通知图标时,堆栈上只有活动A 任何提示或意见将不胜感激 Intent notificationIntent = new Intent(context,

我这样写我的通知意图(下面的片段)。我正在进行活动A、B和C。在运行C时,我按下主屏幕,很快就收到了一个通知。我按下了通知图标,希望从活动A重新启动应用程序,但不幸的是它没有。当前代码所做的是在堆栈顶部创建一个新的活动a。。。。因此,我不得不执行以下运行活动(或堆栈):A、B、C、A

因此,我的主要问题是,如何清理活动堆栈,以便在单击通知图标时,堆栈上只有活动A

任何提示或意见将不胜感激

  Intent notificationIntent = new Intent(context,
                A.class);

        notificationIntent.setAction(Intent.ACTION_MAIN);
        notificationIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK
                | Intent.FLAG_ACTIVITY_CLEAR_TOP);

  PendingIntent contentIntent = PendingIntent.getActivity(context, 0,
                notificationIntent, 0);

        notification.setLatestEventInfo(appContext, contentTitle,
                contentText, contentIntent);

        String ns = Context.NOTIFICATION_SERVICE;
        NotificationManager mNotificationManager = (NotificationManager) context
                .getSystemService(ns);


  mNotificationManager.notify(1, notification);
为清单中的活动A设置launchMode=“singleTask”。在这种情况下,在您从通知返回到活动A之后,活动A将是唯一一个正在运行的活动

但是,当启动模式为singleTask或singleInstance时,您的应用程序将以与从后台恢复应用程序相同的方式运行。无法恢复到活动B或C。

可能会帮助您使用或使用
startActivityForResult