应用把请求加入队列后,传输由 DownloadManager 负责。它公开的 Request API 提供请求头、目标位置设置和网络限制,但没有针对单个请求的代理端点设置方法。

通过 addRequestHeader 添加 Proxy-Authorization 并不能替代选择代理主机和端口。配置一个独立的 HTTP 客户端对象也不会改变已经交给 DownloadManager 的请求。

如果下载应当遵循设备或网络支持的代理策略,就使用该策略,并考虑服务的实际路由。如果应用必须为这一次传输选择不同的代理,请把传输保留在应用自有的客户端中,并提供有文档说明的代理接口,例如用 Proxy 对象打开的 URL 连接。

这一选择也转移了下载生命周期的责任。要保留所需的后台调度、进度、存储处理和恢复行为,而不是用在屏幕临时生命周期中不受跟踪的请求替代系统管理的下载。

相关文章