我应该在哪里使用Service,AsyncTask和Broadcast Receiver?

Bam*_*eva 4 service android broadcastreceiver android-asynctask

我有点困惑,在什么情况下我需要使用Service,asyncTask和Broadcast Receiver等应用程序组件.

任何人都可以解释这些与我需要使用这些组件之间的确切区别吗?

Seb*_*eit 7

AsyncTask是一种创建新线程的友好方式,可以异步执行某些工作.

广播接收器类似于系统事件的事件处理程序.它可以在后台运行并在发生某些事情时执行操作,例如关闭手机或打开wifi.

服务只是一个在后台运行的应用程序(如守护程序),可以为应用程序提供信息或只执行任务.

对不起我的英语,我试着让我明白,但这不是我的母语

  • 不要四处道歉,我们已经看到更糟了. (7认同)

小智 5

我将直接介绍到目前为止我在项目中应用这三个的地方:

1.服务:您想要在后台执行的事情,无需任何用户交互。例如连续获取位置数据或连续发送一些数据到您的服务器。您还可以使用服务每隔几个时间单位执行任务。例如发送十分钟后台更新。

2.AsyncTask:创建一个新的执行线程。到目前为止,我遇到的最佳用途是调用 Web 服务。我使用 AsyncTask 进行 Web 服务调用,执行了以下操作 1.在 onPreExecute() 中显示进度栏 2.执行我的 web doInBackground(Params...) 中的服务调用 3.在 onPostExecute(Result) 中更新 UI 或使用 Web 服务的响应执行其他操作。

3.BroadCastRecievers就像您的应用程序的全局接收器。它们可以侦听系统事件,例如手机重启或应用程序中的自定义事件。我用它们在手机重新启动时启动服务,当我们关闭手机时该服务停止电话。