微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于Android平台的Web服务技术研究

基于Android平台的Web服务技术研究

时间:02-29 来源:互联网 点击:

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平台上的发展。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top