【问题标题】:Proxy can not be resolved代理无法解析
【发布时间】:2012-04-12 04:06:00
【问题描述】:

我使用了相同的代码,只是从这里开始做了一些小的改动:
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: Host is unresolved: 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)
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): 在 java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
04-12 09:31:42.420: WARN/System.err(5181): 在 java.util.concurrent.FutureTask.run(FutureTask.java:137)
04-12 09:31:42.420: WARN/System.err(5181): 在 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)

请帮忙解决。

谢谢,
斯内哈

【问题讨论】:

    标签: android proxy httpurlconnection


    【解决方案1】:

    这是 Android 2.2 版本中的一个问题,它们不支持代理
    但有些手机(如 LG P500)使用 OPera 作为浏览器。

    上有详细的介绍
    http://android-proxy.blogspot.com/
    

    但您可以使用 proxoid 真正实现这一点,它是 Android 的 HTTP 代理。

    code.google.com/p/proxoid/
    

    可以从这个网站获得更多信息。希望这会对你有所帮助。

    【讨论】:

      【解决方案2】:

      java.net.UnknownHostException:主机未解析:Myproxy:8080

      这表示网络中没有名为 Myproxy 的主机。获取代理名称和端口,并在代码中使用。

      【讨论】:

      • 我确信有那个代理和端口号,因为我可以在 java 中做同样的事情。
      • 模拟器可能无法将名称转换为 IP 地址。尝试以下方法之一: 1. 获取代理的 IP 并使用它代替名称。 2.代替在代码中配置代理,将模拟器配置为使用代理(使用IP代替名称是安全的)。说明:developer.android.com/guide/developing/devices/…
      猜你喜欢
      • 2015-02-10
      • 1970-01-01
      • 1970-01-01
      • 2012-06-24
      • 2020-03-07
      • 1970-01-01
      • 2018-04-17
      • 2016-08-13
      • 1970-01-01
      相关资源
      最近更新 更多