在Android上下载的最佳方法是什么?您将使用AsyncTask或Service。我看到几个例子是由两种方式组成的,但最好的方法是什么?
答案 0 :(得分:2)
这不是正确的问题,答案可能都是。 AsyncTask是一个单独的执行线程。服务只是您的应用程序的一部分,它在后台运行并且可以在活动结束后生效。
您需要在非UI线程上下载任何文件,因此无论您是否使用服务,都需要Thread或AsyncTask。所以你总是会使用其中的一个。是否也使用服务的问题是您是否需要下载文件的问题,即使用户转到另一个活动(还有一些其他原因,您可能想要使用服务,但这是主要的一个)。
答案 1 :(得分:1)
我建议,这取决于文件的大小。对于小内容文件,asynch
很棒但是如果要成为longer task
那么你可以去service
,因为服务也是附带restart feature
(start_sticky)以防用户杀死你的应用程序或你的应用程序被内存危机时被android os(LMK:低内存杀手)杀死