我有一个从网址解析的json解析器,该应用程序可以在WiFi上运行而没有问题,速度足够快但在移动网络上它非常慢并且大部分时间都不起作用。
移动网络的速度足够好以至于whatsapp工作正常,所以我不知道问题是否与Json解析器或http客户端有关。
// Async Task to access the web
public String makeHttpRequest(String url, String method,
List<NameValuePair> params) {
HttpParams params1 = new BasicHttpParams();
params1.setParameter(CoreProtocolPNames.PROTOCOL_VERSION, HttpVersion.HTTP_1_1);
HttpClient httpclient = new DefaultHttpClient(params1);
HttpPost httppost = new HttpPost(url);
try {
httppost.setEntity(new UrlEncodedFormEntity(params));
HttpResponse response = httpclient.execute(httppost);
jsonResult = inputStreamToString(
response.getEntity().getContent()).toString();
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
// return JSON String
return jsonResult;
}
答案 0 :(得分:0)
使用任何第三方工具,它们具有内置功能,可以快速提出请求。
AsyncHttpClient: HTTP请求发生在UI线程之外 自动gzip响应解码支持超快请求
最后Volley Volley是一个HTTP库,它使Android应用程序的网络更容易,最重要的是,更快 您可以从developer.android.com-training-volley
中查看此信息