在Activity和Service(或IntentService)中使用Android DownloadManager的区别

3
什么是使用DownloadManager的最常见用例或最佳实践?我的意思是在Activity中实现它与在Service(或IntentService)中实现它。我已经查看了Android文档并阅读了DownloadManager的参考,但找不到任何回答为什么以及何时应该优先在Activity或分别在Service(或IntentService)中使用DownloadManager的内容。
使用其中一种方式的利弊是什么?

你不需要"实现 DownloadManager"。DownloadManager 是一个系统服务。你要使用 DownloadManager 来代表用户下载文件。 - CommonsWare
2个回答

0
下载管理器是一个系统服务,用于处理长时间运行的HTTP下载...下载管理器将在后台进行下载...您可以从任何可以调用getSystemService()的地方使用它。该服务本身负责为您运行下载任务。

0

一个活动是用户可以执行的单个、专注的任务... - 所有正在进行的事情 - 您都可以看到
服务是您可以从活动中调用以在后台执行任务的功能。但是,如果您想从互联网下载某些内容,则最好使用IntentSrvice(使用AsyncTask)或AsyncTask。

但是:

Android DownloadManager introduced 在 Android 2.3(API 9)中引入,是一种系统服务,允许在后台处理长时间运行的HTTP下载,并通过广播接收器通知触发应用程序下载完成。

DownloadManager是“特殊”的系统服务。我发布了描述和教程的链接。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接