【发布时间】:2013-10-30 07:12:53
【问题描述】:
我和这个家伙 [Link Here] 遇到了同样的网络问题
大多数网络要求在 2g/3g 模式下工作正常,只有通过 Wifi 连接时才会出现问题。
但在我的 iphone4,5/网络浏览器上一切正常,我不知道它有什么问题。
所以,任何帮助将不胜感激!谢谢
这是代码
//Code in HttpHelper.java
public class HttpHelper{
..................
HttpGet get = new HttpGet(url);//295
HttpResult result = new HttpResult();
HttpClient client = getNewHttpClient();
HttpResponse response = client.execute(httpPost);// line 298
..................
public static HttpClient getNewHttpClient() {
return new DefaultHttpClient();
}
..................
}
//Code in HttpResult.java
public class HttpResult {
public int code;
public String response;
public HttpResult(){
this.code = HttpStatusCode.FAIL;
this.response = null;
}
}
这是日志
10-30 11:18:18.672: W/System.err(945): org.apache.http.conn.ConnectTimeoutException: 连接到 /188.151.209.58:80 超时 10-30 11:18:18.682: W/System.err(945): 在 org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:121) 10-30 11:18:18.682: W/System.err(945): 在 org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:144) 10-30 11:18:18.682: W/System.err(945): 在 org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164) 10-30 11:18:18.682: W/System.err(945): 在 org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119) 10-30 11:18:18.682: W/System.err(945): 在 org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360) 10-30 11:18:18.682: W/System.err(945): 在 org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555) 10-30 11:18:18.687: W/System.err(945): 在 org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487) 10-30 11:18:18.687: W/System.err(945): 在 org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465) 10-30 11:18:18.687: W/System.err(945): 在 my.package.name.manager.http.HttpHelper.getResponse(HttpHelper.java:298) 10-30 11:18:18.687: W/System.err(945): 在 my.package.name.manager.http.HttpHelper.getData(HttpHelper.java:175) 10-30 11:18:18.687: W/System.err(945): 在 my.package.name..util.ThreadUtil$TaskRunnable.run(ThreadUtil.java:209) 10-30 11:18:18.687: W/System.err(945): 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076) 10-30 11:18:18.687: W/System.err(945): 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569) 10-30 11:18:18.692: W/System.err(945): 在 java.lang.Thread.run(Thread.java:856)我尝试使用 androidhttpclient/apache.httpclient/basic-http-client...等,最终他们都给我一个超时异常
【问题讨论】:
-
发布代码块以及与此相关的任何错误,否则没有人可以帮助您。
-
代码在这里准备好了,谢谢你的回复
-
你的 iphone 和 android 设备是同一个 wifi 网络吗?确保您的 url 正确并且您的 wifi 连接到 Internet。将超时设置得更长一点以确保,可能是 10 秒或 15 秒。这些是可能的检查步骤。
-
我无法在浏览器中打开 URL(IP 地址),我猜它不是公开的。但如果它是公开的,那么问题就出在服务器上。您只需要在您的应用中处理超时异常。
-
@user2652394 是的,它是同一个网络,iphone 工作正常,android 经常超时,当前超时持续时间是 30 秒,即使设置为 60 秒仍然会抛出超时异常
标签: android