Android使用webService

在android中使用webservice,首先要导入Android webservice支持包

ksoap2-android-assembly-3.3.0-jar-with-dependencies.jar

然后,

       HttpTransportSE tSe = new HttpTransportSE(SERVER_URL, TIME_OUT);
tSe.debug = false; //是否启动debug模式
SoapObject soapObject = new SoapObject(NAME_SPACE, method);
//设置参数
JSONObject params = new JSONObject(param);
//设置参数, 参数名为 mJsonString的字符串
soapObject.addProperty("mJsonString", params.toString());
SoapSerializationEnvelope soapserial = new SoapSerializationEnvelope(SoapEnvelope.VER11);
soapserial.bodyOut = soapObject;
// 设置与.NET提供的Web service保持有良好的兼容性
soapserial.dotNet = true;
// 调用HttpTransportSE对象的call方法来调用 webserice
tSe.call(NAME_SPACE + method, soapserial);
SoapObject result = (SoapObject) soapserial.bodyIn;
int count = result.getPropertyCount();
return result.getProperty(count-1).toString();

此处的 soapObject.addProperty("mJsonString", params.toString()); 方法为设置方法的参数, 如果有多个参数,就多调用几次这个就好了。

暂时没有解决数组类型的参数传递。 建议尽量在服务端使用数组作为参数传递。

return之后的结果,服务器端返回的数据,我的服务器端返回的统一为json字符串。

上一篇:python爬取网易云音乐歌单音乐


下一篇:Sigma Function LightOJ - 1336 (约数和为奇数)