Android网络开发之基本介绍

Android平台浏览器采用WebKit引擎,名为ChormeLite,拥有强大扩展特性,每个开发者都可以编写自己的插件。

目前,Android平台有3种网络接口可以使用,分别是:java.net, org.apache, android.net.

1. 使用标准Java接口(java.net.*)连接网络

java.net.* 提供与联网有关的类,包括流和数据包套接字、Internet协议、常用http处理:

创建URL、URLConnection、HttpURLConnection、设置连接参数、连接到服务器、向服务器写数据、从服务器读取数据。

java.net示例:

// 定义地址

URL url = new URL(“http://www.google.com”);

// 打开连接

HttpURLConnection conn = (HttpURLConnection) url.openConnection();

// 得到连接状态

if(conn.getResponseCode() == HttpURLConnection.HTTP_OK) {

  // 得到数据

  InputStream is = conn.getInputStream();

}

2. 使用apache接口(android.net.http.*)连接网络

Android平台引入Apache HttpClient的同时还提供了对它的一些封装和扩展,例如设置缺省的http超时和缓存大小等。可以将Apache视为流行的开源web服务器,主要包括创建HttpClient、Get/Post、HttpRequest等对象,设置连接参数,执行http操作,处理服务器返回结果等。

HttpClient示例:

HttpClient client = new DefaultHttpClient();

HttpResponse response = client.execute(new HttpGet(“http://www.google.com”));

if(response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {

  InputStream is = response.getEntity().getContent();

}

3. 使用Android接口(android.net.*)连接网络

android.net.*实际上是通过对Apache中HttpClient的封装来实现一个http编程接口,提供http请求队列管理以及http连接池管理,以提高并发请求的处理效率,还有网络状态监视、网络访问的Socket、常用的Uri类以及有关WIFI相关的类。

简单的Socket连接示例:

InetAddress inetAddress = InetAddress.getByName(“192.168.1.110”);

Socket socket = new Socket(inetAddress, 61203, true);

InputStream is = socket.getInputStream();

OutputStream os = socket.getOutputStream();

out.close();

in.close();

socket.close();

你可能感兴趣的:(android)