预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

万方数据 基于Android平台的Web服务技术研究Web闵现畅黄理灿TechnologyResearchofAndroid-basedServices(浙江理工大学信息电子学院,浙江杭州310018)介绍了Android平台的架构和Web服务,探讨在Android平台上的应用程序如何使用ksoap2一android类库访问Web服务,最后使用一个简单的实例实现用ksoap2一android在Android平台上访问Web服务。关键词;Android,Web服务,ksoap2一androidAndroid平台是Google于2007年11月推出的一种智能手机平台,由操作系统、中间件、用户界面、应用软件组成,全面整合的移动“软件栈”。诚然,提到Android就不得不说开放手机联盟(OpenAlliance),它是一个由33家手机制造商、软件商和电信业组成的推广Android的联合会。Android是一个开放、自由的移动终端系统,Android平台的开放性也保证了该平台不存在任何阻碍移动产业创新的专有权障碍。随着国内3G进入正式的应用阶段,采用Android系统的智能手机层出不穷。另一方面,WebServices已经逐渐成为Internet上一个重要组件,WebServices天生的优点使它完全适合于为无线设备提供服务。WebServices和移动设备的结合,将会推动移动应用的发展。为此,本文就将讨论在Android平台上如何访问WebServices的相关技术实现问题。Android平台Android平台的架构从下到上可分为五个部分:Linux内核、库、Android运行时环境、应用程序框架、应用程序。1)Linux内核:核心服务(包括硬件驱动程序、进程和内存管理、安全、网络和电源管理)都由一个Linux2.6内核处理。内核还在硬件和软件栈的其他部分之间提供了一层抽象。2)库:运行在内核之上,Android包含了各种C/C++核心库,例如libc和SSL。以及用来回放音频和视频媒体的媒体库;提供管理显示的外观管理器;包含2D和3D的SGL和OpenGL的图形库;本地数据库支持的SQLite;集成了Web浏览器和Intemet安全的SSL和WebKit。3)Android运行时:Android运行时包含了核心库和Dalvik虚拟机,因此,它是面向应用程序提供动力的引擎,它和库一起形成了应用程序框架的基础。Android核心库提供了Java核心库以及Android特定库可用的大部分功能。Dalvik是一个基于寄存器的虚拟机,它已经被优化从而保证一个设备可用高效地同步运行多个实例。它以Linux内核迸行线程和底层内存管理。4)应用程序框架:应用程序框架提供了用来创建Android应用程序的类。它还对硬件访问和对用户界面及应用程序资源的管理提供了一般抽象。5)应用层:所有的应用程序,包括本地的和第三方的,都使用相同的库来构建与应用层之上。应用层运行在Android运行时之内,并且是调用了应用程序框架中可用的类和服务。2在Android平台上访问WebServices是一种基于SOAP协议的以实现远程调用的分布式计算方式。利用WebServices可以将不同操作系统平台、不同语言、不同技术开发的应用整合到一起,具有非常广阔的应用前景。但是,在AndroidSDK中并没有提供调用Services的库。因此,为了实现在Android平台上访问Services的功能需要借助第三方类库来实现。Android平台上常用的用来访问WebServices的软件包是ksoap2一android。ksoap2一adroid是一个开源项目。为An-droid平台提供给了一个轻量级的而且高效的SOAP库。利用ksoap2一android在Android平台上调用Webvices的步骤如下:Services的命名空间和调用的方法名称,关键的代码如下:其中,nameSpace参数表示的是要调用的Web的命名空间的一个String类型变量,该参数开源从Webvices的WSDL文档中获得;methodName参数表示要调用的Services的方法名称的一个String类型变量。2)设定方法的参数值(可选的,如果调用方法无参数,就可省略):3)生成调用方法的SOAP请求信息。该SOAP请求信息利用SoapSerializationEnvelope对象描述:SoapSerializationEnvelope对象的创建需要通过SoapSerializationEnvelope类的构造方法设置SOAP协议的版本号。SOAP协议的版本号是根据WebServioces的版本号决定的。另外,创建SoapSerializationEnvelope对象时。需要设置摘要Keyword