谷歌联网框架volley的使用
2015-03-25 15:51
148 查看
今天学习了下谷歌的这个联网框架Volley框架的详细解析大神看的懂得可以研究一下,具体的用法我现在就用代码来详细说明下。
在这个框架里面有机会访问方式:StringRequest,JsonobjectRequest,ImageRequest这几种访问方式(好像还有一种但是我没找到,能力有限)。下面就一一上代码。
首先是StringRequest:`/**
* 首先创建一个访问的队列,这个队列里面放的就是一个个具体的请求
*/
RequestQueue requestQueue = Volley
.newRequestQueue(getApplicationContext());
StringRequest stringRequest = new StringRequest(
“http://www.baidu.com“,
new Response.Listener() {
这是最简单的String下面的这个JsonobjectRequest和String差不多区别就是它返回了一个能够直接解析的Jsonobject:
除了这种Volley框架还自带了一个NetworkImageView控件看它的源码就知道,是直接继承ImageView的一个View,它可以和Volley自带的ImageLoader混合使用使来达到联网下载图片到缓存图片的一条龙服务。
直接在Xml文件里面配置:
MainActivity里面:
下一步就是新建一个Class来实现
MainActivity:
这样图片就可以显示并且缓存到了本地或者内存里面。
很显然这些例子都是get的访问方式,如想实现post的访问方式只需将request的实现函数中的method换成Method.POST,例如:JsonObjectRequest jsonObjectRequest=new JsonObjectRequest(Method.POST, url, jsonRequest, listener, errorListener);
本人也是第一次接触还需要继续研究,如有问题请加QQ:627944520进行讨论
在这个框架里面有机会访问方式:StringRequest,JsonobjectRequest,ImageRequest这几种访问方式(好像还有一种但是我没找到,能力有限)。下面就一一上代码。
首先是StringRequest:`/**
* 首先创建一个访问的队列,这个队列里面放的就是一个个具体的请求
*/
RequestQueue requestQueue = Volley
.newRequestQueue(getApplicationContext());
StringRequest stringRequest = new StringRequest(
“http://www.baidu.com“,
new Response.Listener() {
@Override public void onResponse(String response) { // TODO Auto-generated method stub Log.e("访问返回的String", response); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { // TODO Auto-generated method stub /** * 访问出现错误的时候,也就是出现返回码不是200的时候 */ Log.e("访问返回的String", error.getMessage()); } }); requestQueue.add(stringRequest);`
这是最简单的String下面的这个JsonobjectRequest和String差不多区别就是它返回了一个能够直接解析的Jsonobject:
/** * 首先创建一个访问的队列,这个队列里面放的就是一个个具体的请求 */ RequestQueue requestQueue = Volley .newRequestQueue(getApplicationContext()); JsonObjectRequest request = new JsonObjectRequest( "http://www.baidu.com", null, new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject response) { // TODO Auto-generated method stub Log.e("访问返回的String", response.toString()); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { // TODO Auto-generated method stub /** * 访问出现错误的时候,也就是出现返回码不是200的时候 */ Log.e("访问返回的String", error.getMessage()); } }); requestQueue.add(request); Volley这个框架自带了一个可以直接下载图片的功能,也就是ImageRequest:
/** * 首先创建一个访问的队列,这个队列里面放的就是一个个具体的请求 */ RequestQueue requestQueue = Volley .newRequestQueue(getApplicationContext()); ImageRequest request = new ImageRequest("", new Response.Listener<Bitmap>() { @Override public void onResponse(Bitmap response) { // TODO Auto-generated method stub ImageView.setImageBitmap(response); } }, 200, 200, Config.ALPHA_8, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { // TODO Auto-generated method stub } }); requestQueue.add(request);
除了这种Volley框架还自带了一个NetworkImageView控件看它的源码就知道,是直接继承ImageView的一个View,它可以和Volley自带的ImageLoader混合使用使来达到联网下载图片到缓存图片的一条龙服务。
直接在Xml文件里面配置:
<com.android.volley.toolbox.NetworkImageView android:id="@+id/imageview" android:layout_width="wrap_content" android:layout_height="wrap_content" />
MainActivity里面:
networkImageView = (NetworkImageView)findViewById(R.id.imageview);’
下一步就是新建一个Class来实现
ImageCache:这是缓存类imagecache的写法
MainActivity:
RequestQueue requestQueue = Volley .newRequestQueue(getApplicationContext()); networkImageView.setErrorImageResId(R.drawable.ic_launcher);// 下载失败显示图片 networkImageView .setImageUrl( "http://img0.bdstatic.com/img/image/shouye/bizhi0323.jpg", new ImageLoader(requestQueue, BFImageCache .getInstance()));
这样图片就可以显示并且缓存到了本地或者内存里面。
很显然这些例子都是get的访问方式,如想实现post的访问方式只需将request的实现函数中的method换成Method.POST,例如:JsonObjectRequest jsonObjectRequest=new JsonObjectRequest(Method.POST, url, jsonRequest, listener, errorListener);
本人也是第一次接触还需要继续研究,如有问题请加QQ:627944520进行讨论
相关文章推荐
- Android使用Google推荐的联网框架Volley,让连接网络更加简单
- Android使用Google推荐的联网框架Volley,让连接网络更加简单
- 通过实例说明J2ME通用联网框架的使用
- 使用框架建立富联网应用
- 谷歌Volley网络框架分析。(二)数据回调流程
- android的volley框架使用日志1
- Volley框架的使用
- 通过实例说明J2ME通用联网框架的使用
- Android Volley框架使用
- Android 网络通信框架Volley的简单使用
- 网络通信框架Volley使用详细说明
- 网络通信框架Volley使用详细说明
- 使用 RIA 框架建立富联网应用
- 谷歌Volley网络框架讲解——HttpStack及其实现类
- 谷歌Volley网络框架讲解——网络枢纽
- 谷歌Volley网络框架分析。(一)初始化
- 通过实例说明J2ME通用联网框架的使用
- 谷歌Volley网络框架讲解——BasicNetwork类
- 谷歌Volley网络框架讲解——第一篇
- 谷歌Volley网络框架分析。(四)缓存机制