Android网络通信(1):Android网络基础
2013-05-18 10:54
239 查看
参考链接:/article/4886443.html
Android平台浏览器采用了WeBKit引擎,这款名为Chorme Lite的Web浏览器拥有强大扩展特性,每个开发者都以为编写自己的插件,使得浏览器的功能更加完善。
目前Android平台有3种网络接口,分别是:java.net.*(标准JAVA接口)、org.apache(Apache接口)和android.net.*(Android网络接口)。
1、java.net.*(标准java接口)
此接口提供与联网有关的类,包括流和数据包套接字、Internet协议、常见HTTP处理。如:创建URL以及URLConnection/HttpURLConnection对象、设置连接参数、连接服务器、向服务器写数据、从服务器读取数据等通信。
下例为常见java.net包的Http例子:
/*使用java.net.*包连接网络*/
2、Apache接口
Android提供的Apache HttpClient,它是一个开源项目,功能更加完善,为客户端的Http编程提供高效、最新、功能丰富的工具包。Android目前使用的是HttpClient4.0(org.apache.http.*),可将Apache看为目前流行的开源Web服务器,主要包括创建HttpClient以及Get/Post、HttpRequest等对象,设置连接参数,执行HTTP操作,处理服务器返回结果等功能。下例为使用android.net.http.*包的例子:
3、Android网络接口
android.net.*包实际是通过Apache中HttpClient的封装来实现的一个HTTP编程接口,同时还提供了Http请求队列管理以及Http连接池管理,以提高并发请求情况下(如装载网页时)的效率
还包括 网络状态监视等接口,网络访问的Socket,常用的Uri类以及有关WiFi相关的类等等。
下例为最简单的Socket连接
/*使用android中的socket连接网络*/
Android平台浏览器采用了WeBKit引擎,这款名为Chorme Lite的Web浏览器拥有强大扩展特性,每个开发者都以为编写自己的插件,使得浏览器的功能更加完善。
目前Android平台有3种网络接口,分别是:java.net.*(标准JAVA接口)、org.apache(Apache接口)和android.net.*(Android网络接口)。
1、java.net.*(标准java接口)
此接口提供与联网有关的类,包括流和数据包套接字、Internet协议、常见HTTP处理。如:创建URL以及URLConnection/HttpURLConnection对象、设置连接参数、连接服务器、向服务器写数据、从服务器读取数据等通信。
下例为常见java.net包的Http例子:
/*使用java.net.*包连接网络*/
//... try{ URL url = new URL("http://www.google.com")//定义地址 HttpURLConnection http = (HttpURLConnection) url.openConnection();//打开连接 int nRC = http.getResponseCode();//得到连接状态 //因是连接网络,不免会出现一些异常,所以必须处理这些异常 if(nRC == HttpURLConnection.HTTP_OK){ InputStream is = http.getInputStream();//取得数据 .....//处理数据 } }catch(Exception e){ } //...
2、Apache接口
Android提供的Apache HttpClient,它是一个开源项目,功能更加完善,为客户端的Http编程提供高效、最新、功能丰富的工具包。Android目前使用的是HttpClient4.0(org.apache.http.*),可将Apache看为目前流行的开源Web服务器,主要包括创建HttpClient以及Get/Post、HttpRequest等对象,设置连接参数,执行HTTP操作,处理服务器返回结果等功能。下例为使用android.net.http.*包的例子:
/*使用android.net.http.*连接网络*/
try{ HttpClient hc = new DefaultHttpClient();//创建HttpClient,这里使用DefaultHttpClient表示默认属性 HttpGet hg = new HttpGet("http://www.google.com");//HttpGet实例 HttpResponse rp = hc.execute(hg);//连接 if(rp.getStatusLine().getStatusCode() == HttpStatus.SC_OK){ InputStream is = rp.getEntity().getContent(); .....//处理数据 } }catch(IOEeception e){ }
3、Android网络接口
android.net.*包实际是通过Apache中HttpClient的封装来实现的一个HTTP编程接口,同时还提供了Http请求队列管理以及Http连接池管理,以提高并发请求情况下(如装载网页时)的效率
还包括 网络状态监视等接口,网络访问的Socket,常用的Uri类以及有关WiFi相关的类等等。
下例为最简单的Socket连接
/*使用android中的socket连接网络*/
//... try{ InetAddress ia = InetAddress.getByName("192.168.1.110");//IP地址 Socket sk = new Socket(inetAddress,61203,true);//端口 InputStream is =sk.getInputStream();//得到数据 OutputStream os = sk.getOutputStream(); .....//数据处理 os.close(); is.close(); sk.close(); }catch(UnknownHostException e){ }catch(IOException e){ } //...
相关文章推荐
- Android核心基础-7.Android 网络通信-8.下载
- Java基础知识强化之网络编程笔记22:Android网络通信之 Android常用OAuth登录(获取个人信息)
- Java基础知识强化之网络编程笔记15:Android网络通信之 Android异步任务处理(AsyncTask使用)
- Android核心基础-7.Android 网络通信-1.获取文本数据
- Android 学习笔记之网络通信基础+WebView....
- Android学习记录之Volley网络通信框架基础解析(1)
- Java基础知识强化之网络编程笔记25:Android网络通信之 Future接口介绍(Java程序执行超时)
- Android核心基础-7.Android 网络通信-4.获取网络XML,JSON
- android基础--网络通信(下)
- Android核心基础-7.Android 网络通信-6.访问Webservice
- android基础--网络通信(上)
- 【Android应用开发技术:网络通信】计算机网络基础
- Java基础知识强化之网络编程笔记24:Android网络通信之 AndroidAsync(基于nio的异步通信库)
- Android基础总结(四)网络通信
- Java基础知识强化之网络编程笔记16:Android网络通信之 使用Http的Get方式读取网络数据(基于HTTP通信技术)
- Java基础知识强化之网络编程笔记23:Android网络通信之 Volley(Google开源网络通信库)
- Android基础总结(五)网络通信2
- Android网络通信基础
- Android 基础:http网络通信
- Java基础知识强化之网络编程笔记17:Android网络通信之 使用Http的Post方式读取网络数据(基于HTTP通信技术)