gpt4 book ai didi

java - PendingIntent 到底什么时候被处理/删除?

转载 作者:太空狗 更新时间:2023-10-29 14:25:39 25 4
gpt4 key购买 nike

我正在使用 PendingIntent 以及 AlarmManagerBroadcastReceiver 在用户指定的时间显示提醒。我正在使用 NotificationManager 显示提醒。

在设置通知之前,我希望按钮显示“设置提醒”,在设置通知之后我希望按钮显示“更改提醒”。一旦向用户显示通知,该按钮应再次显示“设置提醒”

我正在创建具有相同 Intent 、上下文和相同唯一 ID (myUniqueId) 的相同 PendingIntent,以检查 PendingIntent 是否处于 Activity 状态。

Intent intent = new Intent(context, ReminderReceiver.class);
boolean reminderActive = (PendingIntent.getBroadcast(context, myUniqueId, intent, PendingIntent.FLAG_NO_CREATE) != null);

现在可以正常显示按钮文本了。但我发现,一旦显示通知,除非我明确检索相同的 PendingIntent 并取消它,否则它会暂时NOT 被删除。所以有一段时间,按钮仍然显示“更改提醒”。

那么假设除非我明确取消 PendingIntent,否则它仍然存储在内存中的某处以进行垃圾收集是否正确?

最佳答案

So is it correct to assume that unless I explicitly cancels the PendingIntent it's still stored somewhere in the memory

是的。 Android 缓存 PendingIntent 对象。据我所知,他们会一直待到进程终止。

关于java - PendingIntent 到底什么时候被处理/删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12883821/

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