Parcelable 内容未更新

Parcelable content not updating

我有一条 JSON 消息被发送到我的第一个 Android 应用程序中的监听服务(阅读:请保持温柔!)映射到一个实现 Parcelable 的对象。反序列化对象用于显示通知,目的是启动另一个 activity 在布局中显示完整数据。

使用反序列化对象,我可以毫无问题地在通知中显示信息。通知中的代码启动辅助 activity:

Intent intent = new Intent(this, SecondaryActivity.class);
intent.putExtra("objData", myObj);

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

NotificationCompat.Builder mBuilder =
            new NotificationCompat.Builder(this)
                    .setContentTitle(myObj.getTitle())
                    .setStyle(new NotificationCompat.BigTextStyle()
                            .bigText(myObj.getAbstract()))
                    .setContentText(myObj.getAbstract());

mBuilder.setContentIntent(contentIntent);
mNotificationManager.notify(NOTIFICATION_ID, mBuilder.build());

在 SecondaryActivity 中,我像这样打开包裹:

MyObject myObj = getIntent().getParcelableExtra("objData");

并使用其数据填充布局区域。

这在第一次通知时效果很好。在后续的通知中,通知看起来是正确的,但发送到 SecondaryActivity 的可打包数据没有更新(内容看起来与第一个通知相同)。

我假设我遗漏了一些明显的东西,这些东西阻止了 parcelable 对象的更新。你能帮忙吗?

创建待定意图时,您可以尝试添加标志 FLAG_CANCEL_CURRENTFLAG_UPDATE_CURRENT

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

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