静态方法还是广播接收器?

时间:2014-07-04 15:24:06

标签: android android-asynctask broadcastreceiver return-value static-methods

我在这个很棒的网站上找到了很多有用的答案,这对我学习应用程序编程有很大的帮助。现在是时候提出问题,因为我找不到类似的东西。事情是:我有一个活动(假设主要活动),它使用一个类来执行异步任务的各种后台操作。在onPostExecute方法中,我使用公共静态方法(主要是MainActivity.setResult(asyTaskResult))将值返回给主活动;我的问题是:这是处理结果的正确方法吗?我应该使用广播接收器吗?有没有更好的使用方法?我是新的在发布问题时我并不知道我是否以正确的方式做到了。我将非常感谢任何指向有用答案的帮助或链接。提前致谢。< / p>

1 个答案:

答案 0 :(得分:0)

  

这是处理结果的正确方法吗?

可能不是,因为这样很容易导致内存泄漏。

  

我应该使用广播接收器吗?

可能不是你想的那样。

  

有没有更好的方法可供使用?

AsyncTask由保留的片段管理,让任务与片段实例对话,如this sample app

或者,使用事件总线,例如LocalBroadcastManager,Square的Otto或greenrobot的EventBus,如this sample app