如何将非可序列化对象传递给intent服务?

时间:2017-12-08 11:33:09

标签: android android-intent alarmmanager intentservice serializable

我正在使用AlarmManager安排IntentService定期运行某些任务,但我需要将不可序列化的实例传递给服务,这些服务是运行这些任务所必需的,因为它们是不可序列化,我不能使用Intent传递它们。而且那些实例不能是static,那么处理它的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

如果您使用AlarmManager,则事件之间可能不存在您的进程,因此这些对象可能不存在。将数据保存到SharedPreferences可以读入的持久存储(SQLite数据库,IntentService或其他类型的文件)。您可以使用进程级缓存来节省I / O时间,你的过程偶然发生在连续事件中的可能性,但这是一种优化。