我使用了相同的代码,只有很少的变化,如下所示:
Downloading File in Android
Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(
"Myproxy", 8080));
URL url = new URL(sUrl[0]);
HttpURLConnection uc = (HttpURLConnection) url
.openConnection(proxy);
uc.connect();
int fileLength = uc.getContentLength();
我得到以下例外:
04-12 09:31:42.401:WARN / System.err(5181):java.net.UnknownHostException:主机未解析:Myproxy:8080
04-12 09:31:42.405:WARN / System.err(5181):at java.net.Socket.connect(Socket.java:1057)
04-12 09:31:42.405:WARN / System.err(5181):at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection。(HttpConnection.java:62)
04-12 09:31:42.405:WARN / System.err(5181):at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpConnectionPool.java:88)
04-12 09:31:42.405:WARN / System.err(5181):at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHTTPConnection(HttpURLConnectionImpl.java:927)< br / >
04-12 09:31:42.409:WARN / System.err(5181):at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:884)
04-12 09:31:42.409:WARN / System.err(5181):at com.test.filedownload.FileDownloadActivity $ DownloadFile.doInBackground(FileDownloadActivity.java:99)
04-12 09:31:42.413:WARN / System.err(5181):at com.test.filedownload.FileDownloadActivity $ DownloadFile.doInBackground(FileDownloadActivity.java:1)
04-12 09:31:42.416:WARN / System.err(5181):在android.os.AsyncTask $ 2.call(AsyncTask.java:185)
04-12 09:31:42.420:WARN / System.err(5181):at java.util.concurrent.FutureTask $ Sync.innerRun(FutureTask.java:305)
04-12 09:31:42.420:WARN / System.err(5181):at java.util.concurrent.FutureTask.run(FutureTask.java:137)
04-12 09:31:42.420:WARN / System.err(5181):at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068)
04-12 09:31:42.424:WARN / System.err(5181):at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:561)
04-12 09:31:42.424:WARN / System.err(5181):at java.lang.Thread.run(Thread.java:1096)
请帮助解决问题。
谢谢,
斯纳
答案 0 :(得分:1)
这是Android 2.2版中的一个问题,它们不支持代理服务器 但有些像LG P500这样的手机与OPera合作是brwoser。
有关于此的详细信息http://android-proxy.blogspot.com/
但你可以使用proxoid来实现这一点,它是Android的HTTP代理。
code.google.com/p/proxoid/
可以从这个网站获得更多信息。希望这对你有帮助。
答案 1 :(得分:0)
java.net.UnknownHostException:主机未解析:Myproxy:8080
这表示网络中没有名为Myproxy的主机。获取代理名称和端口并在代码中使用它们。