Android DownloadManager和volley的使用场景是什么

Android DownloadManager和volley的使用场景是什么,android,android-volley,android-download-manager,androidhttpclient,Android,Android Volley,Android Download Manager,Androidhttpclient,发言人说: Volley不适用于大型下载或流式操作,因为Volley在解析期间将所有响应保存在内存中。对于大型下载操作,请考虑使用类似于DeWaldMeals/的替代方案。 我只是想知道使用截击或下载管理器的门槛是多少 如何判断一个下载是一个大的下载 使用Volley和DownloadManager的典型情况是什么?这完全取决于您的用户情况,假设您有一个API,它可以从数据库返回用户配置文件,格式化并为您创建PDF。虽然您也可以使用Volley进行此操作,但最好使用SystemService这样

发言人说:

Volley不适用于大型下载或流式操作,因为Volley在解析期间将所有响应保存在内存中。对于大型下载操作,请考虑使用类似于DeWaldMeals/

的替代方案。 我只是想知道使用截击或下载管理器的门槛是多少

如何判断一个下载是一个大的下载


使用Volley和DownloadManager的典型情况是什么?

这完全取决于您的用户情况,假设您有一个API,它可以从数据库返回用户配置文件,格式化并为您创建PDF。虽然您也可以使用
Volley
进行此操作,但最好使用
SystemService
这样的
DownloadManager
来完成此操作,它完全在后台执行下载操作,并为您提供下载文件的回调

虽然没有一个阈值,但是以这种方式考虑,如果你想下载一些东西,请使用<代码>下载管理器< /C>。在一些用例中,

DownloadManager
也不能有效,假设您正在从服务器请求一个JSON,并使用
DownloadManager
而不是
Volley
请求,paritcular JSON完全在后台获取并发送回您,而这可以通过截击有效地实现,截击支持处理
onErrorResponse
onResponse
方法中的不同状态

综上所述,您认为当前可能影响UI的所有请求都不超过应用程序在运行时获得的平均堆内存(约20-40MB),并且需要即时回调,这些请求都应该使用
Volley
完成。对于不影响当前用户界面且可能是完整后台操作(即使文件大小仅为500KB)且不需要即时回调的操作,应使用
DownloadMaanger


希望这有帮助

如果我想从云下载jsonArray或json列表,json数据总量超过20MB或40MB,我应该使用哪一个?顺便说一下,这些json数据应该每10天或更长时间更新一次。10天是指您使用的是
JobScheduler
服务还是等效服务?如果是,您可以使用
DownloadMaanger
,前提是您不需要立即更新UI。