到目前为止,我的IntentService (s) 一直运行良好,因为每个IntentService只接收来自单个Activity (SQLite INSERT) 的请求并响应同一个Activity。
然后我想出了如何使用来自同一个IntentService (SQLite)的数据在Activity中加载视图;现在事情变得复杂了。也就是说:我至少有两个活动向同一个IntentService发出请求(READ/INSERT/UPDATE) ( SQLite 数据库中的 10 个表中的每一个都有一个IntentService )。
主要挑战: IntentService必须知道Intent来自哪个 Activity并将响应(数据数组或来自 SQLite DB 的 INSERT/UPDATE 请求的结果)发送回正确的 Activity。
到目前为止,每个Activity一直在使用Handler.Callback与其IntentService进行通信,现在这似乎无法胜任这项任务。其他两个选项是ResultReceiver和LocalBroadcastManger。
我需要深入了解IntentService识别每个Intent的源/调用Activity所需的机制,以便响应/结果到达它们应该去的地方。
谢谢!