Android从活动开始网络线程

时间:2012-12-28 10:39:27

标签: android android-activity android-service

我需要从我的应用程序启动线程,该线程定期从服务器JSON文件下载 我为此创建了Service,并在android文档中推荐了onStartCommand中的线程 问题是我应该真正创建服务以启动线程还是我可以在主Activity中实现everithing?

3 个答案:

答案 0 :(得分:4)

您可以在活动中实施所有内容。 如果您在活动未运行时需要运行某些内容,则仅实施该服务。

活动中的两个最佳方法是:

的AsyncTask http://developer.android.com/reference/android/os/AsyncTask.html

AsyncTaskLoader http://developer.android.com/reference/android/content/AsyncTaskLoader.html

我个人更喜欢第二个装载机。

答案 1 :(得分:1)

你是对的,你应该创建服务,只需创建处理程序或创建任何线程或使用时间任务定期检查服务器上的json文件,这是我认为的好方法。

谢谢

答案 2 :(得分:1)

由于您正在下载JSON而不是将该服务用于其他任何事情,因此您可以IntentService检查Wakeful IntentService以定期安排下载。更多信息请阅读android的文档。

  1. Wakeful IntentService
  2. Intent Service Documentation
  3. android design considerations: AsyncTask vs Service (IntentService?)