Android高级之Volley框架(一):StringRequest
来源:互联网 发布:用友u8软件 编辑:程序博客网 时间:2024/05/16 19:31
一.重要概念
1.Volley 是 Google 推出的 Android 异步网络请求框架和图片加载框架。在 Google I/O 2013 大会上发布。
2.适用场景:Volley适合处理数据量小、操作频繁的网络操作。
3.分类:Volley大体上分为4种:
3.1.StringRequest:用于请求String字符串
3.2.JsonRequest:用于请求JSON字符串
3.3.ImageRequest:用于请求图片,但不推荐
3.4.ImageLoder:用于请求图片,带有二级缓存,推荐用它,此外,还可以用NetworkImageView。
3.5自定义reqiuest.
二.具体步骤
1.创建请求队列对象
2.创建请求对象
3.把请求对象加入队列中
4.设置取消请求(比如按返回键取消请求时)
5.由于执行网络操作,必须在清单文件中加入INTERNET权限
三.代码实现:
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
import android.widget.Toast;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
public class MainActivity extends AppCompatActivity {
private TextView textView;
private RequestQueue requestQueue;
private StringRequest stringRequest;
private String path="http://www.baidu.com";
private String TAG="TAG";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView= (TextView) findViewById(R.id.textView);
// 第一步: 创建请求队列,通过Volley.newRequestQueue(this)得到.
requestQueue = Volley.newRequestQueue(this);
// 第二步:创建字符串请求对象
/**
1参:请求方式
2参:路径
3参:请求成功时回调的方法
4参:请求失败时回调的方法
*/
stringRequest = new StringRequest(Request.Method.GET, path, new Response.Listener<String>() {
@Override
// 请求成功时回调的方法
public void onResponse(String s) {
textView.setText(s);
}
},
// 请求失败时回调的方法,直接打印错误即可
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
volleyError.printStackTrace();
Toast.makeText(MainActivity.this, volleyError.getMessage(), Toast.LENGTH_SHORT).show();
}
});
// 第三步: 将字符串对象加入请求队列中
requestQueue.add(stringRequest);
// 第四步: 设置标签,方便取消请求
stringRequest.setTag(TAG);
}
@Override
protected void onDestroy() {
super.onDestroy();
// 销毁活动时取消请求,最后在清单文件中加入网络权限
requestQueue.cancelAll(TAG);
}
}
这样,请求到的字符串会显示在TextView上.
- Android高级之Volley框架(一):StringRequest
- Android Volley框架(一):StringRequest、JsonObjectRequest、JsonArrayRequest
- android之volley StringRequest null
- Android-Volley网络通信框架(StringRequest和JsonObjectRequset)
- Android-Volley网络通信框架(StringRequest & JsonObjectRequest)
- Android Volley StringRequest
- Android Volley - volley StringRequest編碼問題
- Android Volley - volley StringRequest編碼問題
- android 高级之旅 (一)网络加载框架volley基本用法
- Android高级之Volley框架(二):JsonRequest
- Android:简单封装Volley StringRequest
- Volley框架简单应用之StringRequest的简单代码和步骤
- android 解决volley中StringRequest返回乱码
- Android高级之Volley框架(三):ImageRequest、ImageLoader、NewworkImageView的使用
- Android之Volley框架
- Android网络框架总结Volley(一)
- Android Volley 框架的使用(一)
- Android Volley 框架的使用(一)
- 源码编译安装 clang
- 数据结构实验之栈一:进制转换
- java System.getProperty()可以获取的值
- CSS学习笔记之<盒子模型>
- 查看mysql字符集
- Android高级之Volley框架(一):StringRequest
- hdu2196 Computer(树形dp)
- Log4j没有正确配置导致项目没有发布成功
- HDU 3534 Tree(dfs统计树的直径的数量)
- 对于重载new函数所遇到的问题记录
- 手势识别器的用法
- Flume学习12_Flume Spooling directory source读取文件格式的要求
- 个人博客配置百度Ueditor--jsp版本
- 多线程