基于Android_volley的Get、Post的方法
用Android_volley加载网络信息有Get,post两种方式,通过一个例子来说明,在Activity中设置两个Button,分别测试Get、post方法
一般分为三步,
1. 创建一个RequestQueue对象。
2. 创建一个StringRequest对象。
3. 将StringRequest对象添加到RequestQueue里面。
package com.example.administrator.jreduch07.save; import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.TextView; 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;
import com.example.administrator.jreduch07.R;
import com.example.administrator.jreduch07.util.StringGetResquest;
import com.example.administrator.jreduch07.util.StringPostRequest; public class VolleyActivity extends AppCompatActivity
implements View.OnClickListener{ //本类监听
private Button bt,bt1;
private TextView show;
private RequestQueue queue;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_volley);
bt= (Button) findViewById(R.id.bt);
bt1= (Button) findViewById(R.id.bt1);
show= (TextView) findViewById(R.id.tv);
bt.setOnClickListener(this);
bt1.setOnClickListener(this); queue= Volley.newRequestQueue(this); //初始化 } @Override
public void onClick(View v) {
int id=v.getId();
if(id==R.id.bt){
getWeather();
PostVolley();
}else if(id==R.id.bt1){
GetVolley();
}
}
public void GetVolley(){
String url="http://192.168.1.30:8080/HttpTest/index.jsp?option=getUser&uName=jerehedu";
StringRequest sr=new StringRequest(url, new Response.Listener<String>() { @Override
public void onResponse(String s) {
show.setText(s+"111");
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
show.setText(volleyError.getMessage());
}
});
queue.add(sr);
} public void PostVolley(){
String url=UrlUtil.channelUrl;
String url2=UrlUtil.weatherUrl;
StringPostRequest spr=new StringPostRequest(url, new Response.Listener<String>() {
@Override
public void onResponse(String s) {
show.setText(s);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) { }
});
spr.putHeader("apiKey","5b46143955a4b1ff1b470a94315625cd");
queue.add(spr);
}
public void getWeather(){
String url=UrlUtil.weatherUrl+"?location=yantai";
StringGetResquest sgr=new StringGetResquest(com.android.volley.Request.Method.GET,
url, new Response.Listener<String>() {
@Override
public void onResponse(String s) {
show.setText(s);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
show.setText(volleyError.getMessage());
}
});
sgr.putHaedlers("apikey","3f37b44e3115841957414d7c4bf6c0f5");
queue.add(sgr);
}
} 需要创建一个类来确定使用那种方法
public class StringGetResquest extends StringRequest{
private Map<String,String> header; public StringGetResquest(int method, String url, Response.Listener<String> listener, Response.ErrorListener errorListener) {
super(method, url, listener, errorListener);
header=new HashMap<>(); }
public void putHaedlers(String key,String value){
header.put(key,value);
}
public Map<String,String> getHeaders() throws AuthFailureError{
return header;
} }
基于Android_volley的Get、Post的方法的更多相关文章
- 基于redis的处理session的方法
一个基于redis的处理session的方法,如下. <?php class Session_custom { private $redis; // redis实例 private $prefi ...
- 基于Deep Learning 的视频识别方法概览
深度学习在最近十来年特别火,几乎是带动AI浪潮的最大贡献者.互联网视频在最近几年也特别火,短视频.视频直播等各种新型UGC模式牢牢抓住了用户的消费心里,成为互联网吸金的又一利器.当这两个火碰在一起,会 ...
- C# 7.0 新特性1: 基于Tuple的“多”返回值方法
本文基于Roslyn项目中的Issue:#347 展开讨论. 1. C# 7.0 新特性1: 基于Tuple的“多”返回值方法 2. C# 7.0 新特性2: 本地方法 3. C# 7.0 新特性3: ...
- 基于查表的整数霍夫变换方法实现(matlab)
暂时先用matlab把算法弄一下,这是基于查表的整数霍夫变换方法实现及解释. 接着再实现FPGA的霍夫变换. 霍夫变换原理和算法这里不多说,可参考以下链接: http://blog.csdn.net/ ...
- 基于git命令的代码统计方法
基于git命令的代码统计方法 没什么好说的,基于git log命令,使用前提是安装了git ...... .统计所有人代码量 统计所有人代码增删量,拷贝如下命令,直接在git bash等终端,git项 ...
- 基于MATLAB的多项式数据拟合方法研究-毕业论文
摘要:本论文先介绍了多项式数据拟合的相关背景,以及对整个课题做了一个完整的认识.接下来对拟合模型,多项式数学原理进行了详细的讲解,通过对文献的阅读以及自己的知识积累对原理有了一个系统的认识.介绍多项式 ...
- 华为基于策略划分VLAN的配置方法及示例
学过思科交换机的朋友,可能对基于策略划分VLAN的配置方法印象非常深,感觉确实比较复杂,先要配置VMPS以及VMPS数据库,但在华为交换机中,这种现象得到了彻底改变,因为它有了一种特殊的端口类型—— ...
- 一种基于uCos-II操作系统和lwIP协议栈的IEEE-1588主站以及基于该主站的报文处理方法
主站以及应用于电力系统的支持IEEE‐1588协议的主时钟(IEEE‐1588主站)的实现方法.该方法是在一个低成本的硬件平台上,借助uCos‐II操作系统和TCP/IP的协议栈,对以太网数据进行了分 ...
- 基于bs4库的HTML查找方法
基于bs4库的HTML查找方法 find_all方法 <>.find_all(name,attrs,recursive,string,**kwargs) 返回一个列表类型,内部存储查找的结 ...
- 使用基于Apache Spark的随机森林方法预测贷款风险
使用基于Apache Spark的随机森林方法预测贷款风险 原文:Predicting Loan Credit Risk using Apache Spark Machine Learning R ...
随机推荐
- Unity与IOS交互
Unity IOS交互 @By 广州小龙 QQ群:63438968 环境:Mac os 10.9.2 Unity 4.2.1f4 Xcode 5.0.2 Unity IOS的交互我写过一个教程 ...
- Java语言基础(四) String和StringBuffer的区别
Java提供了两个字符串类:String和StringBuffer. String提供了数值不可变的字符串,而StringBuffer提供的字符串对象可以进行修改. 当知道字符数据要改变的时候就可以使 ...
- bzoj1475
明显的二分图最大独立点权集 ans=总点权-最小割(最大流) ..] ,,-,); dy:..] ,-,,); inf=; type node=record ne ...
- 【转】OpenGL基础图形编程(一)
原文:http://blog.chinaunix.net/uid-20638550-id-1909183.html 分类: 一.OpenGL与3D图形世界 1.1.OpenGL使人们进入三维图形世界 ...
- FZYZOJ-1144 恶魔城
P1144 -- 恶魔城 时间限制:1000MS 内存限制:131072KB 状态:Accepted 标签: 图论-最短路 二分 无 Description 上帝需要 ...
- [转]让程序在崩溃时体面的退出之CallStack
原文地址:http://blog.csdn.net/starlee/article/details/6618849 在我的那篇<让程序在崩溃时体面的退出之Unhandled Exception& ...
- Struct2 向Action中传递参数(中文乱码问题)
就是把视图上的值传递到Action定义的方法中 也就是把数据从前台传递到后台 三种方式: 1. 使用action属性接收参数 比如jsp页面: <body> 使用action属性接收参数 ...
- JavaScript实现简单的打印功能
var printSetup = function(){ // 打印页面设置 wb.execwb(8,1); }; var printPreView = function(){ // 打印页面预览 w ...
- U3D C# 实现AS3事件机制
写了很多年的AS3,最近接触U3D感觉事件机制没AS3的爽.咬紧牙关一鼓作气 基于C# 的委托实现了一版.废话不多说上干货. EventDispatcher代码如下: using UnityEngin ...
- XML认识
XML概念 XML是eXtensible Markup Langguage 缩写,称之为可扩展标记语言.XML 被设计用来传输和存储数据.与HTML不同的是: HTML被设计用来显示数据,其焦点是数据 ...