WebService是一种基于SOAP协议的远程调用标准,通过webservice可以将不同操作系统平台、不同语言、不同技术整合到一块。在Android SDK中并没有提供调用WebService的库,因此,需要使用第三方的SDK来调用WebService。PC版本的WEbservice客户端库非常丰富,例如Axis2,CXF等,但这些开发包对于Android系统过于庞大,也未必很容易移植到Android系统中。因此,这些开发包并不是在我们的考虑范围内。适合手机的WebService客户端的SDK有一些,比较常用的有Ksoap2,可以从http://code.google.com/p/ksoap2-android/downloads/list进行下载;将下载的ksoap2-android-assembly-2.4-jar-with-dependencies.jar包复制到Eclipse工程的lib目录中,当然也可以放在其他的目录里。同时在Eclipse工程中引用这个jar包。
private static String nameSpace ;
private static String serviceURL
;
private static String methodName1;
private static String
soapAction;
public static String GetNewMsg() {
String
mes="";
SoapObject request = new
SoapObject(nameSpace,methodName1);
// request.addProperty("ID",
ID);
SoapSerializationEnvelope envelope = new
SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.bodyOut =
request;
envelope.dotNet=true;
HttpTransportSE ht = new
HttpTransportSE(serviceURL);
ht.debug = true;
try {
ht.call(soapAction, envelope);
if (envelope.getResponse()
!= null) {
mes=envelope.getResponse().toString();
} else {
mes="获取信息失败!";
}
}
catch (Exception e) {
Log.i("获取信息异常",e.getMessage());
mes="获取信息异常!";
}
return mes;
}