基于Android平台的Web服务技术研究
HttpTransportSE(URL);5)使用call 方法调用Web Services,代码如下:
trans.call(null, ssEvelope);6)使用getResponse 方法获得Web Services 的返回结果,代码如下:
SoapObject soapResult = (SoapObject)ssEvelope.getResponse();
3 访问Web Services 的实例
我们现在将用简单的例子来实现在Android 平台利用ksoap2-adroid 实现简单的Web Services 访问协议。
3.1 服务器端程序。
我们发布一个简单的Web 服务,其功能是根据用户的输入查询数书目的相关信息。这个Web 服务使用的服务器是ApacheTomcat7.0.5.实现类的源代码如下:
Book 类的代码如下:
利用Eclipse 的工具生成Web 服务的部署文件,并拷贝到Tomcat 服务器~webappsaxis2WEB-INFservices 目录下,启动服务器进行发布。其中,生成的services.xml 文件如下:
图1 Web 服务部属结果图
部署成功后, 我们在浏览器中输入http: / / localhost:8080 /axis2 / services / listServices,可以看到在服务上所部属的服务。
我们可以在http: / / localhost:8080/ axis2 / services / Seach-BookService芽wsdl 网页上看到Web 服务的WSDL 描述。
3.2 Android 客户端
下载ksoap2-android-assembly-2.5.2-jar-with-dependencies.jar 包后, 引入到我们的工程文件中, 就可以使用ksoap2 访问Web 服务了。客户端实现代码如下:
package net.blogjava.mobile.wsclient;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
3.3 测试客户端
在Android 模拟器上运行客户程序, 调用Web 服务后的结果如图2 所示。
图2 运行结果
4 结束语
在Android 平台上,我们可以利用ksoap2 -android 类库实现对Web 服务的访问。实现过程简单、直接,这对在Android 平台上开发更多实用的应用程序提供了很大的方便,也能推动Web 服务技术在Android平台上的发展。
技术 研究 服务 Web Android 平台 基于 相关文章:
- linux基础技术(02-09)
- 单片DSP处理器功能系统的SOPC技术设计(01-12)
- TMS320C55x DSP并行处理技术分析与应用(11-22)
- 基于JTAG的DSP外部FLASH在线编程与引导技术(01-22)
- TMS320F2812片内Flash在线烧写技术研究(01-23)
- 军事指挥系统中VxWorks下汉字显示技术(07-16)