在两个异步通信之间传递数据

时间:2015-03-09 20:46:53

标签: android asynchronous android-asynctask

我正在编写一个Android应用,允许用户使用Google工作表API将某些信息更新为google驱动器。

我有一个更新一个电子表格的活动,另一个更新不同电子表格的活动。

我在每个负责执行更新代码的活动中都有一个asynctask。

我的问题是: 我开始第一个活动 - 用户在那里启动asynctask和同时我也开始第二个活动,然后在那里用户启动第二个asynctask - 意味着我无法确定哪个asynctask将先完成

如果一个或两个AsyncTasks失败,我想报告错误。

我的问题是 - 如何在不同活动中的两种PostExecute方法之间进行交互?

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

一种方法是使用SharedPreferences在两个AsyncTasks中存储和检索数据。 this answer将引导您完成SharedPreferences。

另一种方法是创建新的BroadcastReceiver并从AsyncTasks通知它。 here是vogella创建接收器的好教程。

答案 1 :(得分:0)

从您的主要活动开始2 IntentServices。当服务完成任务时,使每个服务都向主要活动报告。