首页 > 解决方案 > Android:将通知 PendingIntent 保存到 Room DB

问题描述

我正在设置我的应用程序的一部分,它将接收推送通知并将它们保存到 Room 数据库中,以便以后可以在列表 UI 中显示它们。我希望通知仍然是可点击/可操作的,因此我需要保存它们的PendingIntent,或某种 Intent,但这对于 Room 是不可能的。有没有办法可以在以后重新创建PendingIntent?没有从 Android 的 API 中看到很多可用的选项.....如果只是PendingIntent实现的话Serializable

标签: androidpush-notificationandroid-room

解决方案


有没有办法可以在以后重新创建 PendingIntent ?

当然。以与您最初创建它的方式相同的方式创建它(例如,调用PendingIntent.getActivity().

如果您没有创建PendingIntent,那么无论如何您都无法存储它。制作PendingIntent作品的部分原因是了解创建它的应用程序。出于安全原因,这意味着PendingIntent必须由该应用程序实际创建,而不是由其他应用程序(例如您的应用程序)创建。


推荐阅读