gpt4 book ai didi

android - 如何正确地将独特的附加内容传递给待处理的 Intent ?

转载 作者:IT老高 更新时间:2023-10-28 22:19:16 28 4
gpt4 key购买 nike

我在使用 alarmManager 时遇到了问题,并且未决 Intent 带有附加功能。

如果我设置了多个闹钟,它们会响起,但附加功能保持不变。

我已经阅读了这些问题:

我已经试过了:

  • 为每个待处理的 Intent 分配一个唯一的 ID,并且
  • 使用所有待处理的 Intent 标志,

一切都无济于事。我不知道为什么它不起作用。

这是一个代码 fragment :

Intent intent = new Intent(con,
AppointmentNotificationReciever.class);
intent.putExtra("foo", bar.toString());


int id = randomNum;

PendingIntent sender = PendingIntent.getBroadcast(con, id,
intent, PendingIntent.FLAG_UPDATE_CURRENT);


AlarmManager am = (AlarmManager) con.getSystemService(Context.ALARM_SERVICE);
am.set(AlarmManager.RTC_WAKEUP, scheduleExecution, sender);

最佳答案

这里可能有两个不同的问题:

1) 如果您之前已经创建了 PendingIntent 并且它“匹配”了现有的 PendingIntent,那么您必须指定 PendingIntent.FLAG_UPDATE_CURRENT 标志,否则它不会传递额外内容。 “匹配”基于 Intent.filterEquals() 使用的标准,因此请务必阅读那里的文档并确保您了解数据、操作、类型等。

2) 我已经读到,如果你没有对你的 Intent 设置一个 Action ,那么它就不会传播额外的东西,所以也许试试 intent.setAction("com.blah.Action")。

关于android - 如何正确地将独特的附加内容传递给待处理的 Intent ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4340431/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com