Android手机1个。
PC 1台。
Java SE Development Kit 6u22 for Windows。
Eclipse IDE for Java EE Developers。
Android Development Tools 0.9.9。

基于Linux内核的Android操作系统包含了一组非常优秀的联网功能。目前,Android平台有3种网络接口可以使用,它们分别是:标准Java接口(java.net.*)、Apache接口(org.apahce)和Android网络接口(android.net.*)。
(1)标准Java接口
java.net.*下面提供了访问HTTP服务的基本功能和接口,包括流和数据包套接字、Internet协 议、常见HTTP处理。使用这些接口的基本操作主要包括:创建URL以及 URLConnection/HttpURLConnection对象,设置链接参数,连接到服务器,向服务器写数据,从 服务器读取数据。
下面是常见的使用java.net.*包的HTTP例子,代码清单如下:

(2)Apache接口
Android提供的Apache HttpClient是一个开源项目,弥补了标准Java接口(java.net.*)灵活性不足的缺点,功能更加完善,为客户端的HTTP编程提供了高效、最新、功能丰富的工具包支持。使用这部分接口的基本操作与java.net.*基本类似,主要包括:创建HttpClient以及GetMethod/PostMethod,HttpRequest等对象,设置连接参数,执行HTTP操作,处理服务器返回结果。
下面是使用android.net.http.*包的例子,代码清单如下:

分页
(3)Android网络接口
android.net. *包实际上是通过对Apache中HttpClient的封装来实现的一个HTTP编程接口,同时还提供了HTTP请求队列管理以及HTTP连接池管理,以提高并发请求情况下的处理效率。除此之外,还有网络状态监视等接口、网络访问的Socket、常用的URI类以及与WiFi相关的类等。
下面是一个通过AndroidHttpClient访问服务器的简单例子,代码清单如下:

以上简单地介绍了网络访问的3种方式,但在实际开发应用中,可能会用到更加复杂的联网操作。在本实验中以第二种方式为例。首先让我们来了解使用HttpClient所用到的一些类。
1)ClientConnectionManager接口。ClientConnectionManager是客户端连接管理器接口,它提供了几个抽象方法,如表5-1所示。

2)DefaultHttpClient。DefaultHttpClient是默认的一个HTTP客户端,可以使用它创建一个HTTP连接。

3)HttpResponse。HttpResponse是一个HTTP连接响应,当执行一个HTTP连接后,就会返回一个HttpResponse,可以通过HttpResponse获得一些相应信息。请求一个HTTP连接并获得连接请求是否成功的代码如下:

本实验中采用Post方式来请求网络数据。使用Post方法首先要使用URL创建一个HttpPost对象,代码如下:

使用Post方式,需要使用NameValuePair来保存将要传递的参数,这里使用BasicNameValuePair来构造一个要被传递的参数params,然后通过add方法添加这个参数到NameValuePair中,代码如下:

Post方式还需要设置所使用的字符集,最后通过HttpClient来请求这个连接,返回响应并处理,代码如下:

代码编写完毕,为了使程序拥有访问网络的权限,要在AndroidManifest.xml中添加如下内容:

服务器端代码的编写,在后台服务器只需要编写一个能够接收客户端传递过来数据的Servlet就可以了。Servlet的doPost方法代码如下:

分页
与一般的Java项目一样,src文件夹是项目的所有包及源文件,res文件夹则包含了项目中的所有资源。项目下的gen文件夹下的R.java文件是自动生成的不需要对其进行修改。
AndroidManfest.xml文件包含了该项目中所使用的Activity、Service、Receiver。程序启动时显示的第一个界面是由AndroidManifest.xml确定的。
主程序HttpActivity类继承自Activity类,重写了void onCreate(Bundle savedInstanceState)方法。在onCreate方法通过setContentView(R.layout.main)设置Activity要显示的布局文件,该方法也是程序的入口。上面介绍的使用Post方法访问Internet的代码均包含在该函数中。其代码如下:


下载ADT使用本地安装,或者通过在线安装。
安装完毕,在Eclipse中选择Windows→Preferences→Android,选择Android SDK的路径。
如果使用模拟器调试程序,选择Android SDK and AVD Manager,在里面新建一个AVD。
选择File→New→Android Project。
使用droiddraw创建页面,当界面绘制完毕后,单击Generate,生成.xml文件,将生成的内容 复制到工程下的res下的layout文件夹下的main.xml文件中,保存。
在src文件夹下编写Java代码。
1)如何使用Get方式请求数据?
2)考虑使用另外两种方式实现网络接入。
ICP经营许可证:鄂B2-20080078
(于2003年首获许可证:鄂B2-20030029)
鄂公网安备:420100003343号
© 2002-2025 武汉制信科技有限公司 版权所有
投诉举报电话:027-87592219