服务完成后如何通知主要活动?

时间:2011-10-04 00:04:11

标签: android

我有一项服务正在从远程服务器检索我在项目开始时启动的MainActivity的URL。

问题是,我需要在活动运行之前使用这些URL。

首次启动活动时启动服务。

一旦检索到URL,我就将URL放在共享首选项中。

但是当这种情况发生时,活动已经加载了默认图像。 我正在使用适配器来LazyLoad图像。

如何通知活动自行刷新或刷新我用于在服务完成后下载图像的BaseAdapter?

欢迎任何更好的主意!

3 个答案:

答案 0 :(得分:1)

如果您需要更新Activity中的Service,则应查看BroadcastReceivers

可以找到Google搜索教程here

答案 1 :(得分:1)

尝试使用新的Loader类。他们真是太棒了.http://developer.android.com/reference/android/content/AsyncTaskLoader.html。如果您的api级别低于11,则可以使用向后兼容性包。http://developer.android.com/resources/articles/backward-compatibility.html

答案 2 :(得分:0)

我要做的第一件事是摆脱使用Service下载图片网址。相反,只需使用AsyncTask在后台线程上执行此操作。您可以在每个ImageView中保留AsyncTask的句柄,当图像下载完成后,您可以在onPostExecute中设置图像。