【发布时间】:2013-07-14 10:06:16
【问题描述】:
这个小代码 sn-p 在我的 Mac 的 JVM 上运行良好。不幸的是,它在 Android 4.2 上执行时会崩溃。
import java.net.HttpURLConnection;
import java.net.URL;
public class App
{
public static void main( String... arguments ) throws Exception
{
HttpURLConnection connection = (HttpURLConnection) new URL( "https://github.com" ).openConnection();
connection.setRequestMethod( "HEAD" );
System.out.println( connection.getResponseCode() + "" );
}
}
如果我将https://github.com 替换为https://www.facebook.com,它可以正常工作,但我无法弄清楚原因。
异常不包含消息;所以这至少是堆栈跟踪。
java.io.EOFException
at java.util.zip.GZIPInputStream.readFully(GZIPInputStream.java:206)
at java.util.zip.GZIPInputStream.<init>(GZIPInputStream.java:98)
at java.util.zip.GZIPInputStream.<init>(GZIPInputStream.java:81)
at libcore.net.http.HttpEngine.initContentStream(HttpEngine.java:541)
at libcore.net.http.HttpEngine.readResponse(HttpEngine.java:844)
at libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:283)
at libcore.net.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:495)
at libcore.net.http.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:134)
【问题讨论】:
-
您的代码对我来说工作正常。确保您有互联网连接和正确的设置以访问github.com URL
-
你是在安卓上运行的吗?
标签: java android http httpurlconnection urlconnection