Web Service技术, 能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件, 就可相互交换数据或集成。依据Web Service规范实施的应用之间, 无论它们所使用的语言、 平台或内部协议是什么, 都可以相互交换数据。Web Service是自描述、 自包含的可用网络模块, 可以执行具体的业务功能。Web Service也很容易部署, 因为它们基于一些常规的产业标准以及已有的一些技术,诸如
标准通用标记语言
下的子集
XML
、HTTP。Web Service减少了应用接口的花费。Web Service为整个企业甚至多个组织之间的业务流程的集成提供了一个通用机制。--百度百科,
Android 中要使用webservice,要下载KSOAP2包地址
http://code.google.com/p/ksoap2-android/downloads/list下载之后将jar包导入即可。
1.首先要在webservice的WSDL文档中明确NAMESPACE,soap的协议版本号,
String methodName = "getCity";
String nameSpace ="http://tempuri.org/";
String soapAction =
nameSpace
+
methodName
;
String service_url = "";webservice 请求的url;
2.构建SoapObject对象,传递参数:
SoapObject soapObject = new SoapObject(nameSpace,methodName);构造参数为命名空间和方法名称。
soapObject.
addProperty("","");//
addProperty方法的第1个参数虽然表示调用方法的参数名,但该参数值并不一定与服务端的WebService类中的方法参数名一致,只要设置参数的顺序一致即可.
3.创建soap的请求信息
SoapSerializationEnvelope对象,
SoapSerializationEnvelope se = new
SoapSerializationEnvelope(
SoapEnvelope.VER11);//参数和WSDL中的版本号一致。
se.bobyout =
soapObject
;
se.doNet = true;
4.创建
HttpTransportSE 对象,其中call方法来请求
HttpTransportSE
httpse = new
HttpTransportSE
(service_url);//参数为webservice请求URL;
httpse.deBug = true;
httpse.call(soapAction,
se
);//(null,
se
)
5.得到返回结果,
Object object = se.
getResponse();
最后解析得到的结果就OK了