android http 慢,Android HttpURLConnection非常慢_timeout_开发99编程知识库
下面是我在下面的代码中所面对的情况:就像你看到的,我正在尝试读取一个HTTP流。 如果你使用的是 Galaxy laptop,我将在Galaxy运行以下代码,当我尝试使用Galaxy浏览器( 在wifi和 3 g 中) 连接到URL时,它会运行 100%时间 works 。 但是,当我在 Wi-Fi 上使用我的Galaxy S3连接时,超时时间为2. 如果删除超时属性,会得到奇怪的异常,如:"re
下面是我在下面的代码中所面对的情况:
就像你看到的,我正在尝试读取一个HTTP流。 如果你使用的是 Galaxy laptop,我将在Galaxy运行以下代码,当我尝试使用Galaxy浏览器( 在wifi和 3 g 中) 连接到URL时,它会运行 100%时间 works 。 但是,当我在 Wi-Fi 上使用我的Galaxy S3连接时,超时时间为2. 如果删除超时属性,会得到奇怪的异常,如:"recvfrom failed: ETIMEDOUT"
"failed to connect to : connect failed: ENETUNREACH (Network is unreachable)"
"unable to resolve the host : no address associated with hostname"
我对任何建议都是开放的。public static final String getHttpResponse(String url)
{
HttpURLConnection conn = null;
InputStream response = null;
try {
URL address = new URL(url);
conn = (HttpURLConnection)address.openConnection();
conn.setConnectTimeout(30 * 1000);//30 seconds
conn.setReadTimeout(30 * 1000);//30 seconds
response = conn.getInputStream();
if(conn.getResponseCode()!= HttpURLConnection.HTTP_OK) {
Log.e("Util.getHttpResponse", Integer.toString(conn.getResponseCode()));
return null;
}
String result = Util.streamToString(response);
return result;
} catch(IOException e) {
response = conn.getErrorStream();
Log.e("Util.getHttpResponse", Util.streamToString(response));
return null;
} finally {
if( response!= null ) {
try {
response.close();
} catch (IOException e) {
//TODO Auto-generated catch block
e.printStackTrace();
}
}
if(conn!= null) {
conn.disconnect();
}
}
}
更新:- 使用AndroidHttpClient无效- 在获取输入流之后,Eclipse ide中出现了一个错误弹出框。 你可以看到我的调试游标一直到第 107行。 当我这次得到输入流的时候。
更多推荐
所有评论(0)