android网络编程(一)
2015-12-02 20:33
323 查看
Android中的网络编程
URLConnection类
setConnectTimeOut();
设置连接超时
setReadTimeOut()
设置读取超时
connect()
作用:连接到指定的URL
InputStream getInputStream
作用:获取服务器响应头中的流,流里的数据就是客户端请求的数据
void setDoInput(Boolean newValue)
作用:设置打开输入流
void setDoOutput()
作用:设置打开输出流
OutputStream getOutputStream();
作用:得到输出流
HttpURLConnection
setRequestMethod();
设置请求方式
请求方式有
GET POST HEAD OPTIONS PUT DELETE TRACE
getRequestMethod()
得到请求方式
getResponseCode()
先建立连接再得到响应码
常见的有200(请求成功)
404(请求错误)
500(服务器内部错误)
URL类
常见构造方法:
URL(String spec)
URL(String protocol,String host,int port,String file)
常用方法:
InputStream openStream();
作用:打开连接并返回从连接处得到的输入流
URLConnection openConnection()
作用:打开连接
网络请求
主线程阻塞:
UI停止刷新,无法响应用户操作;
耗时操作不应该在主线程进行
Hanlder消息队列机制
主线程一旦被创建,系统就自动为其创建message Queue和looper(消息轮询器)
轮询器的作用,就是不停的检测消息队列中是否有消息
消息队列一旦有消息,轮询器会把对象传给消息处理器(Handler),处理器会调用HandleMessage方法来处理这
条消息,handleMessage方法就会被调用。
缓存
view的setTag()方法既可以作为标签,又可以携带数据
convertView中有ViewHolder对象
提交的数据需要经过Uri编码,英文和数字编码后不变
URLencode(name)//编码
URLencode(String s,String charsetName)
get方式
String path="http://10.0.2.2:8080/LoginServlet/Login?"+"name="+name+"&pass="+pass;
post方式
与get方式基本类似,添加post请求的两行属性
String text="name="+name+"&pass="+pass;
conn.setRequestProperty("Content-Type","");
conn.setRequestProperty("Content-Length","");
post方式需要用输出流向网络输出数据,不象get方式可以在URL中直接添加参数
URLConnection类
setConnectTimeOut();
设置连接超时
setReadTimeOut()
设置读取超时
connect()
作用:连接到指定的URL
InputStream getInputStream
作用:获取服务器响应头中的流,流里的数据就是客户端请求的数据
void setDoInput(Boolean newValue)
作用:设置打开输入流
void setDoOutput()
作用:设置打开输出流
OutputStream getOutputStream();
作用:得到输出流
HttpURLConnection
setRequestMethod();
设置请求方式
请求方式有
GET POST HEAD OPTIONS PUT DELETE TRACE
getRequestMethod()
得到请求方式
getResponseCode()
先建立连接再得到响应码
常见的有200(请求成功)
404(请求错误)
500(服务器内部错误)
URL类
常见构造方法:
URL(String spec)
URL(String protocol,String host,int port,String file)
常用方法:
InputStream openStream();
作用:打开连接并返回从连接处得到的输入流
URLConnection openConnection()
作用:打开连接
网络请求
主线程阻塞:
UI停止刷新,无法响应用户操作;
耗时操作不应该在主线程进行
Hanlder消息队列机制
主线程一旦被创建,系统就自动为其创建message Queue和looper(消息轮询器)
轮询器的作用,就是不停的检测消息队列中是否有消息
消息队列一旦有消息,轮询器会把对象传给消息处理器(Handler),处理器会调用HandleMessage方法来处理这
条消息,handleMessage方法就会被调用。
缓存
view的setTag()方法既可以作为标签,又可以携带数据
convertView中有ViewHolder对象
提交的数据需要经过Uri编码,英文和数字编码后不变
URLencode(name)//编码
URLencode(String s,String charsetName)
get方式
String path="http://10.0.2.2:8080/LoginServlet/Login?"+"name="+name+"&pass="+pass;
post方式
与get方式基本类似,添加post请求的两行属性
String text="name="+name+"&pass="+pass;
conn.setRequestProperty("Content-Type","");
conn.setRequestProperty("Content-Length","");
post方式需要用输出流向网络输出数据,不象get方式可以在URL中直接添加参数
相关文章推荐
- 看图学网络 二 网络边缘部分的应用体系结构
- HTTP状态码
- 网络协议学习笔记-数据链路层-MTU、路径MTU和串行线路吞吐量计算
- 暂停更新,请到http://www.52brt.com上关注最新文章
- 看图学网络 一 网络的组成
- TCP/IP详解学习笔记(2)-- 数据链路层
- socket与http的区别
- HTTP Modules versus ASP.NET MVC Action Filters
- iOS UIImageView 网络加载图片自适应大小问题
- HTTP Analyzer过滤器使用
- Android中开辟线程(下载-网络连接)
- [国嵌攻略][068][tftp网络协议实现]
- 【python】网络编程-TCP协议套接字
- 推荐一些C#相关的网站、资源和书籍 (转载自http://www.cnblogs.com/jiangxiaofan/p/3808316.html)
- 【python】网络编程-套接字常用函数
- Http、TCP/IP协议与Socket之间的区别
- AFN(上传、下载)
- 服务器搭建时报错:HTTP 错误 404.2
- c#使用HttpWebRequest上传文件同时携带其他参数
- Ubuntu12.10编译MPTCP