为android的DownloadManager类设置代理

时间:2014-01-20 20:53:46

标签: android proxy

我有一个带有WebView的应用程序,可以下载视频并在VideoView中播放。

为了管理下载,我使用了方便的DownloadManager API。 不幸的是,在某些情况下我需要使用代理。

我已使用反射detailed in this stackoverflow question成功设置了WebView的代理,但我不确定如何设置DownloadManager以使用代理..

这可能吗? 如果没有,我的替代方案是什么?

由于

1 个答案:

答案 0 :(得分:7)

我找不到使用DownloadManager执行此操作的方法,因此我最终使用AsyncTask实现了我自己的(简化)下载管理器。

然后可以将Proxy对象传递给Url.openConnection,如下所示:

Proxy proxy = new Proxy(Proxy.Type.HTTP, 
                        new InetSocketAddress(proxyHost, proxyPort));
URL url = new URL(src);
HttpURLConnection connection = (HttpURLConnection) url.openConnection(proxy);

获得代理连接后,您可以按常规方式下载内容。