我有一个带有WebView的应用程序,可以下载视频并在VideoView中播放。
为了管理下载,我使用了方便的DownloadManager
API。
不幸的是,在某些情况下我需要使用代理。
我已使用反射detailed in this stackoverflow question成功设置了WebView的代理,但我不确定如何设置DownloadManager
以使用代理..
这可能吗? 如果没有,我的替代方案是什么?
由于
答案 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);
获得代理连接后,您可以按常规方式下载内容。