了解一下Android的Apache HttpClient
解决方案 »
- 求教!android的SD卡访问权限,已经在AndroidManifest里设置了,位置也提到最高了,可为什么还是访问不了?
- android启动照相机,如何实现编辑后,保存在ImageView。上传到服务端
- 请帮忙看个布局问题
- android数据库访问
- android与WebClient的一个问题
- 怎样让PopupWindow弹出窗口后面的父窗口窗口变灰
- 严重的问题...关于java.awt
- Android for eclipse plug in 不能下载
- 怎么在widget下实现翻页功能
- 点击GrieView中的一个view,弹出菜单,且是单击后弹出,不是长按弹出。
- Android如何获得二级列表中的条目数
- 有什么好书推荐一下呗
@Override
public void run() {
Message msg = handler.obtainMessage();
String name = nameEt.getText().toString();
String pwd = pwdEt.getText().toString();
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("NAME", name));
params.add(new BasicNameValuePair("PWD", pwd));
HttpPost post = new HttpPost(Constant.BASEURL + "Login");
httpClient = new DefaultHttpClient();
httpClient.getParams().setIntParameter(HttpConnectionParams.SO_TIMEOUT, 10000);
httpClient.getParams().setIntParameter(HttpConnectionParams.CONNECTION_TIMEOUT, 10000);
try{
post.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
HttpResponse response = httpClient.execute(post);
if (response.getStatusLine().getStatusCode() == 200){
result = new String(EntityUtils.toString(response.getEntity()).getBytes("ISO-8859-1"),"UTF-8");
if (result.equals("2")) {
msg.arg1 = 2;
}else{
msg.arg1 = 1;
}
}else{
msg.arg1 = 0;
}
handler.sendMessage(msg);
} catch (Exception e) {
e.printStackTrace();
} finally{
httpClient.getConnectionManager().shutdown();
}
}
}给你一个源码,是我自己项目里面登陆的。服务器端只需要写一个servlet接收参数,查询,然后返回就行了
通过一个登录的案例,重点演示了android如何调用服务端的webservice,都采用了apache的框架,
服务端接口的返回数据使用了压缩加密的技术,10K的数据在压缩加密之后变成1K,这是手机省流量的关键技术所在,android如何解压解密,资源中都有演示。
这个资源包含了说明文档,jar和api齐全!