单击通知时在 运行 时间更改 PendingIntent 操作

Change PendingIntent action at run time when click on notification

我在应用程序中集成了推送通知,我现在正在做仪式,我正在做的是将 pendingintent 设置为应用程序的 currentTopActivity class 如果应用程序处于前台状态,如果应用程序是在后台状态下,然后将 HomeActivity class 设置为默认 class 以在通知单击时打开 HomeActivity。我正在设置通知 setAutoCancel(fasle); 使通知保留在通知区域中。

问题是:如果我收到通知并且我在 ThirdActivity.class 然后它设置 ThirdActivity.class 在 PendingIntent 将在通知点击时打开,如果 用户第二次点击通知则不应打开 ThirdActivity 相反,它应该在用户时打开 HomeActivity 第二次点击通知。

设置 class 其中 class 字符串是根据应用程序的状态获取的,如前所述:

Intent notificationIntent = new Intent();
        notificationIntent.setClassName(context, classString);

那么如何在用户第一次点击后 运行 时间更改 pendingIntent。

将待定意向设置为 send a broadcast。然后你在 <receiver> 中接收它,然后你从那个接收器中选择 activity 根据状态启动。