定期向 ArrayList 添加元素

Periodically adding elements to ArrayList

我的 IntentService 中有一个 ArrayList,我向其中添加了用户 NameMessage[=29 等元素=].

private ArrayList<ShoutData> shoutList = new ArrayList<>();

每次服务收到新通知时都会添加新的名称和消息。

 ShoutData data = new ShoutData();
 data.setName(name);
 data.setShout(shout);
 shoutList.add(data);
 resultIntent.putParcelableArrayListExtra(SHOUT_ARRAY, shoutList);

因此,当单击通知时,它应该会导致 activity,我可以在其中检索整个 ArrayList(具有多个名称和消息)。但是,只有上次通知中的名称和消息最终位于 ArrayList 中。 我需要的是从我收到通知的用户那里获取所有名称和消息。我该如何解决这个问题?我认为问题在于每次收到新通知时都会重新创建 ArrayList,并且只会添加当前通知中的名称和消息(需要存储名称和消息,直到通知为 clicked/the 意图被调用)。因此,元素不会一次全部添加,而是在收到每个通知时一个一个地添加。顺便说一句 pendingIntent:

PendingIntent.FLAG_UPDATE_CURRENT

如果需要任何其他代码,请评论。

这是可能的。您应该首先在内部为 ex 创建数组。一些家activity您还可以使用全局配置(您的数组)创建一些单例 class 并在 IntentService 中访问它。