0
我通过php在Android中获取104个变量从MySQL并尝试显示在列表视图,但它需要将近1-2分钟来加载值如何加快数据提取。android数据提取是非常缓慢的从在线web服务器
我正在使用json获取数据,任何其他库的快速获取。
请用完整的例子来解释。
我通过php在Android中获取104个变量从MySQL并尝试显示在列表视图,但它需要将近1-2分钟来加载值如何加快数据提取。android数据提取是非常缓慢的从在线web服务器
我正在使用json获取数据,任何其他库的快速获取。
请用完整的例子来解释。
尝试Android的异步HTTP客户端库
特点
欲了解更多详情,请访问以下链接:
http://loopj.com/android-async-http/
下面是使用它的一个例子:
pdialog.setMessage("Veuillez patienter!");
pdialog.show();
RequestParams params = new RequestParams();
params.put("user_login", username);
AsyncHttpClient client = new AsyncHttpClient();
client.post("http://yourUrl.com", params, new AsyncHttpResponseHandler() {
@Override
public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
loading = true;
AdapterPrincipal adapterPrincipal;
String s = "";
try {
s = new String(responseBody, "UTF-8");
Log.d("Error", s.toString());
JSONObject arrg = new JSONObject(s);
JSONArray query = arrg.getJSONArray("query");
Log.i("result from query ", "" + query);
for (int i = 0; i < query.length(); i++) {
try {
pdialog.dismiss();
JSONObject object = query.getJSONObject(i);
String dateinsertannonce = object.getString("date_insert_annonce");
Log.i("date", dateinsertannonce);
String datevente = object.getString("vendu");
String marque = object.getString("marque");
String Clomn_Model = object.getString("model");
String Clomn_Prix = object.getString("prix");
String Clomn_Kilometrage = object.getString("kilometrage");
String Clomn_BoiteVitesse = object.getString("boite_vitesse");
String Clomn_Energie = object.getString("energie");
String Clomn_Source = object.getString("source");
String Clomn_Url = object.getString("url");
String Clomn_PHOTO = object.getString("images_noms");
String Maj = object.getString("derniere_maj");
int id = object.getInt("id");
voitureList = databaseHelper.getAllVoiture(username, currentLength);
listView.setAdapter(new AdapterLogin(getActivity(), voitureList, username, currentLength));
} catch (JSONException e) {
e.printStackTrace();
}
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
}
@Override
public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {
}
});
}
});
}
这些有点问题你会得到很多赞成票。你做了什么检查?你有没有试过在浏览器中看到这个JSON加载?花了多少时间?你有没有使用Jmeter来查看响应时间? –
我不知道关于Jmeter,JSON加载时间我是一个完整的初学者,并要求我的怀疑不应该投我我 – rakesh1999
感谢Jmeter它需要125ms共204变量我提取 – rakesh1999