我创建了自己的JSON类。但是,当互联网速度缓慢时,我遇到了问题。 当互联网速度慢或mysql服务器出现问题时。这会花费很多时间,并且永远不会检索数据。因此,我想取消连接。 我该如何修改我的JSON类。或者,是否需要在Async <>中执行此操作。
我的JSON类:
public class JSONParser {
public String ret ;
public JSONObject makeHttpRequest(String url, List<NameValuePair> pairs)
{
UrlEncodedFormEntity form;
try
{
HttpParams httpParams = new BasicHttpParams();
int timeoutConnection = 500;
HttpConnectionParams.setConnectionTimeout(httpParams, timeoutConnection);
int timeoutSocket = 500;
HttpConnectionParams.setConnectionTimeout(httpParams, timeoutSocket);
DefaultHttpClient defaultHttpClient = new DefaultHttpClient(httpParams);
HttpPost httpPost = new HttpPost(url);
if (pairs != null)
{
httpPost.setEntity(new UrlEncodedFormEntity(pairs,"UTF-8"));
}
HttpResponse httpResponse = defaultHttpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
if (httpEntity != null)
{
ret = EntityUtils.toString(httpEntity);
return new JSONObject(ret.substring(ret.indexOf("{"), ret.lastIndexOf("}") + 1));
}
}
catch (Exception ex)
{
}
return null;
}
}
答案 0 :(得分:0)
@Amjad,在这种情况下,解析器类没有问题。正如您提到的,如果互联网速度很慢,那么接收时间本身将花费很长时间。你为什么不尝试改造。响应成功后,它将返回您的确切模型。也可以随时取消请求。您可以refer this link