Volley

来源:互联网 发布:数据库创建索引 编辑:程序博客网 时间:2024/05/16 19:26

一、简单跟大家分享下volley微笑

       volley的使用大家都可以在其它博客中找到并加以运用学习在这我就不多说了。

       这篇博客是我在运用volley遇到的一个小问题,Volley是可以传递JSONObject数据给服务器.但是没有具体方法去传递参数

      当然volley最新文件也会给大家

网址:http://download.csdn.net/detail/qq_19527793/8646207  这是免费的大笑

,Eclipse导入volley(注意查看library是否已勾选中)只要在项目中添加Build path---->Config Build Path----->Android----->添加volley

     (在这说一句可能大家没有注意的地方,volley文件要跟Eclipse中项目放在同一个文件夹下,才能正常添加)


下面就是具体的代码实现:定义MapPostRequest 继承Request<JSONObject>

public class MapPostRequest extends Request<JSONObject> {
private Map<String, String> requestmap;
private Listener<JSONObject> mlistener;


public MapPostRequest(int method, String url, Listener<JSONObject> listener,
ErrorListener errorlistener, Map<String, String> map) {
super(method, url, errorlistener);
// TODO Auto-generated constructor stub
this.requestmap = map;
this.mlistener = listener;
}


@Override
protected Response<JSONObject> parseNetworkResponse(NetworkResponse response) {
// TODO Auto-generated method stub
try {

/**

若出现乱码问题,解决方法

  第一种String jsonString = new String(response.data, "UTF-8");
  第二种
response.headers.put(HTTP.CONTENT_TYPE,                response.headers.get("content-type"));            String jsonString = new String(response.data, HttpHeaderParser.parseCharset(response.headers));

*/

String jsonString = new String(response.data,
HttpHeaderParser.parseCharset(response.headers));
return Response.success(new JSONObject(jsonString),
HttpHeaderParser.parseCacheHeaders(response));
} catch (UnsupportedEncodingException e) {
return Response.error(new ParseError(e));
} catch (JSONException je) {
return Response.error(new ParseError(je));
}
}


@Override
protected void deliverResponse(JSONObject response) {
// TODO Auto-generated method stub
mlistener.onResponse(response);
}


@Override
protected Map<String, String> getParams() throws AuthFailureError {
// TODO Auto-generated method stub
return requestmap;
}
}


你的问题解决了吗?若还有疑问评论我会尽快回复奋斗

0 0
原创粉丝点击