该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
以下是定义在一个单例类中的方法,负责与服务器进行JSON数据交互
public JSONObject getJSONObject(String url, Map map, final VolleyJsonCallback callback){
JSONObject params = null;
if(map != null){
params = new JSONObject(map);
}
JsonObjectRequest jObjRequest = new JsonObjectRequest(url, params,
new Response.Listener() {
@Override
public void onResponse(JSONObject result) {
callback.onSuccess(result);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError arg0) {
// TODO Auto-generated method stub
Log.v("error", arg0.toString());
}
});
RequestQueueSingleton.getInstance(mCtx).addToRequestQueue(jObjRequest);
return null;
}
以下是在同一个类中定义的接口
public interface VolleyJsonCallback{
void onSuccess(JSONObject result);
}
以后每次需要与服务器数据交互,只需要执行以下方法即可:
xxxClass.getJSONObject(MAIN_URL, map,
new VolleyJsonCallback() {
@Override
public void onSuccess(JSONObject result) {
// TODO Auto-generated method stubS
});