Android:如何保存parcelable对象的实例?

时间:2015-11-25 15:17:29

标签: java android sqlite android-notifications

我正在尝试保存StatusBarNotification的实例,以便我可以稍后向用户显示通知。我注意到StatusBarNotifcation不是Serializable而是Parcelable。有没有办法在数据库中存储确切的实例状态,这样即使用户转动他的手机,也会存储实例对象。

我知道将Parcelable对象存储在数据库中并不是最好的做法。但我需要这样做。

如果有任何方法可以获取实例的字节数组,我可以接受建议。

修改

我今天发现,如果我通过一些未出席的通知关闭我的Android手机,当我重新启动手机时,我仍然可以看到相同的通知。话虽这么说,android以某种方式保存了相同的通知实例。

现在我的问题是,如何?如果android确实为什么我们不能。

2 个答案:

答案 0 :(得分:4)

  

有没有办法在数据库中存储确切的实例状态,这样即使用户关闭了手机,也会存储实例对象。

没有。特别是,您不仅无法持久保存与PendingIntents关联的Notification,而且无法在所有安全规则完整的情况下重新创建它们。 PendingIntent与创建它的应用程序紧密相关;您不是最初创建这些PendingIntents的应用。

答案 1 :(得分:1)

我认为你无法在数据库中保存通知的可分配对象(也不是一个好习惯)。