AsyncHttpClient
package com.jingle.httpstudy;
import org.apache.http.Header;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import com.loopj.android.http.AsyncHttpClient;
import com.loopj.android.http.AsyncHttpResponseHandler;
import com.loopj.android.http.JsonHttpResponseHandler;
import com.loopj.android.http.RequestParams;
public
class
MainActivity
extends
Activity
{
private
String
URL
=
"http://192.168.0.11:8080/NovallService/login.action";
private
String
userName
=
"15995858188";
private
String
userPass
=
"aa97eba124ab0c029fb7d5c37a6141b0";
private
AsyncHttpClient
client;
@Override
protected
void
onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initButtonLogin();
initButtonOffLine();
}
private
void
initButtonOffLine()
{
Button
btnOffline
=
(Button)
findViewById(R.id.getOffLine);
btnOffline.setOnClickListener(new
OnClickListener()
{
@Override
public
void
onClick(View
v)
{
// getOffLine();
getOverRun();
}
});
}
private
void
initButtonLogin()
{
Button
btnLogin
=
(Button)
findViewById(R.id.login);
btnLogin.setOnClickListener(new
OnClickListener()
{
public
void
onClick(View
v)
{
asyncLogin();
}
});
}
private
void
getOverRun()
{
String
url
=
"http://192.168.0.11:8080/NovallService/getAllOverRun.action";
String
deviceIds
=
"4";
String
lastRequestDate
=
"2015-03-1617:40:00";
RequestParams
params
=
new
RequestParams();
params.put("deviceIds",
deviceIds);
// 设置请求的参数名和参数值 key-value pair
params.put("lastRequestDate",
lastRequestDate);// 设置请求的参数名和参数
// client.setTimeout(5000);
client.get(url,
new
JsonHttpResponseHandler()
{
public
void
onSuccess(int
statusCode,
Header[]
headers,
String
responseString)
{
Log.d("ace",
">>>>"
+
responseString
+
"<<<<");
}
@Override
public
void
onFailure(int
statusCode,
Header[]
headers,
String
responseString,
Throwable
throwable)
{
Log.d("ace",
">>>>"
+
"error"
+
"<<<<");
throwable.printStackTrace();
}
});
// client.get(url, params, new AsyncHttpResponseHandler() {
//
// public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
// Log.d("ace", new String(arg2));
// }
//
// public void onFailure(int arg0, Header[] arg1, byte[] arg2,
// Throwable arg3) {
// arg3.printStackTrace();
// }
// });
}
private
void
getOffLine()
{
String
url
=
"http://192.168.0.11:8080/NovallService/getAllOffLine.action";
String
deviceIds
=
"6";
String
lastRequestDate
=
"2015-03-1617:40:00";
// 创建请求参数的封装的对象
RequestParams
params
=
new
RequestParams();
params.put("deviceIds",
deviceIds);
// 设置请求的参数名和参数值 key-value pair
// params.put("lastRequestDate", lastRequestDate);// 设置请求的参数名和参数
client.get(url,
params,
new
AsyncHttpResponseHandler()
{
public
void
onSuccess(int
arg0,
Header[]
arg1,
byte[]
arg2)
{
Log.d("ace",
new
String(arg2));
}
public
void
onFailure(int
arg0,
Header[]
arg1,
byte[]
arg2,
Throwable
arg3)
{
arg3.printStackTrace();
}
});
}
private
void
asyncLogin()
{
client
=
new
AsyncHttpClient();
// 创建请求参数的封装的对象
RequestParams
params
=
new
RequestParams();
params.put("userName",
userName);
// 设置请求的参数名和参数值 key-value pair
params.put("password",
userPass);// 设置请求的参数名和参数
client.post(URL,
params,
new
AsyncHttpResponseHandler()
{
public
void
onSuccess(int
arg0,
Header[]
arg1,
byte[]
arg2)
{
if
(arg0
==
200)
{
Log.i("ace",
new
String(arg2));
// tv_result.setText(new String(responseBody)); // 设置显示的文本
}
}
public
void
onFailure(int
arg0,
Header[]
arg1,
byte[]
arg2,
Throwable
arg3)
{
arg3.printStackTrace();
}
});
// 查看 cookie 信息
// CookieSpec cookiespec = CookiePolicy.getDefaultSpec();
// Cookie[] cookies = cookiespec.match(LOGON_SITE, LOGON_PORT, "/",
// false,
// client.getState().getCookies());
// if (cookies.length == 0) {
// System.out.println("None");
// } else {
// for (int i = 0; i < cookies.length; i++) {
// System.out.println(cookies[i].toString());
// }
// }
}
}
AsyncHttpClient的更多相关文章
- 异步网络加载开源框架AsyncHttpClient使用
AsyncHttpClient是异步的,但是有时候我们需要得到请求的结果集来返回给某个函数,由于是异步的,所以不能够直接return会去,所以可以定义一个interface来给调用AsyncHttpC ...
- AsyncHttpClient 源码分析
上一篇文章从功能和用法上对AsyncHttpClient做了个大致介绍,今天我们和以往一样,从内部实现.原理的角度带领大家看看 其工作机制,以便加深理解.写程序越多,我发现每接触一个新东西,都会有强烈 ...
- android-async-http AsyncHttpClient介绍
前一阵子刚搬了家,加上公司要发新版本,所以一直比较忙,文章也好几周没更新了.难得这个周末有空,正好周内偶然间闲逛 发现这个很不错的第三方开源类库,针对Android开发中发送http请求的. 在And ...
- FastJson和AsyncHttpCLient
Android的展示数据,除了上章所讲的本地存储外,大部分数据都来自于网络.首先介绍一下Android APP开发常见的网络操作方式.从网络层面上有底层的tcp/ip,也就是我们常见的socket套接 ...
- Android应用中使用AsyncHttpClient来异步网络数据(转载)
摘要: 首先下载AsyncHttpClient的库文件,可以自行搜索,可以到下面地址下载 http://download.csdn.net/detail/xujinyang1234/5767419 测 ...
- asynchttpClient框架关于多文件批量上传的问题,改用xUtil
RequestParams params = new RequestParams(); params.add("ordernum",ordernum); params.add(&q ...
- Asynchttpclient开源框架下载图片和文本,于Volley和Glide开源框架的区别。
AsyncHttpClient是一款比较流行的Android异步网路加载库,在github上的网址是:https://github.com/loopj/android-async-httpAsyncH ...
- android AsyncHttpClient 开源框架的使用
AsyncHttpClient 1.在很多时候android都需要进行网络的操作,而android自带的HttpClient可以实现,但要进行很多网络连接的时候(如:下载很多图片),就需要线程池来进行 ...
- 强大的网络通信框架(不实现缓存)--第三方开源--AsyncHttpClient
AsyncHttpClient是一款比较流行的Android异步网路加载库,在github上的网址是:https://github.com/loopj/android-async-http但是Asyn ...
随机推荐
- JAVA中的数组是对象吗?
public class Main{ public static void main(String[] args) { int a[]={1,9}; //Object obj=new int[10]; ...
- jquery中datagrid中getSelected和getSelections的应用
http://blog.sina.com.cn/s/blog_8e50ede90101fff9.html 刚开始使用jquery的datagrid就知道如果要对特定的一行进行编辑,可以是 $('#on ...
- arp绑定网关MAC地址错误
为了防止局域网的arp 要绑定网关MAC地址 在vista/win中 用 arp -s 绑定网关会出现错误 ARP 项添加失败 C:\Users\sink>arp -a 接口: 10.200.5 ...
- Laravel教程 一:安装及环境配置
Laravel教程 一:安装及环境配置 此文章为原创文章,未经同意,禁止转载. Homestead 最近在SF上面看到越来越多的Laravel相关的问题,而作为一个Laravel的脑残粉,本来打算有机 ...
- SQLServer 数据导入导出 SSIS 包 位置
笔记:sqlserver 在执行数据导入导出的时候,可以选择是否保存SSIS包,如果选择保存,在保存方式有:SQlserver .文件系统.如果选择sqlserver 则 包信息保存在 msdb 系统 ...
- windows2003安全加固
因为IIS的方便性和易用性,使它成为最受欢迎的Web服务器软件之一.但是,IIS的安全性却一直令人担忧.如何利用IIS建立一个安全的Web服务器,是很多人关心的话题.要创建一个安全可靠的Web服务器, ...
- cmd+lcx+nc+sc提权工具总结
cmd:执行命令的载体cmdshell lcx:端口映射工具 1.在自己的host上的cmd下运行:lcx.exe -listen 51 3389 //意思是监听51端口并转发到3389端口 2.在服 ...
- 网站的PV,UV,IP名词解释
PV:PV 是Page Views的缩写,即页面浏览量,用户每一次对网站中的每个网页访问均被记录一次.注意,访客每刷新一次页面,pv就增加一次. UV:UV是Unique Visitor的缩写,即独立 ...
- struts2使用注解--ACTION中的应用
1.在类中指定包:@ParentPackage("system").其中system是在struts.xml中定义的包名.2.配置文件--->注解2.1配置文件方式(返回js ...
- 基于HttpListener的web服务器
写在前面 前面两篇文章分别介绍了基于原始socket的web服务器和基于tcpListener的web服务器,本篇文章将继续介绍另外一种基于HttpListener的. HttpListener Ht ...