WebService---Android中访问WebService接口的方法

 

 最近公司有个项目需要从Android平台访问WebService接口,实现向发布的函数传递对象。在网上找了一些资料,发现使用ksoap2可以调用WebService传递对象。
 
需要引入ksoap2-android-assembly-2.5.2-jar-with-dependencies.jar
复制代码代码如下:

  //WebService的命名空间
  static final String namespace = "http://impl.service.suncreate.com";
  //服务器发布的url
  static final String url = http://10.100.3.41/axis2/services/UploadService;
  final String methodName = "upload"; // 函数名
  final int sessionID = "111111";  //sessionID
  //创建HttpTransportSE对象,通过HttpTransportSE类的构造方法可以指定WebService的url
  HttpTransportSE transport = new HttpTransportSE(url);
  transport.debug = true;
  //指定WebService的命名空间和函数名
  SoapObject soapObject = new SoapObject(namespace, methodName);
  //设置调用方法参数的值
  soapObject.addProperty("sessionID", sessionID); //sessionID
  soapObject.addProperty("data", cds); //cds是需要传递的对象
  SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER10);
  envelope.bodyOut = transport;
  envelope.setOutputSoapObject(soapObject);
  //使用call方法调用WebService方法
  transport.call(null, envelope);
  SoapObject sb = (SoapObject) envelope.bodyIn;
  String xmlMessage = sb.toString(); // 获取从服务器端返回的XML字符串 
posted on 2016-05-17 16:03  左手指月  阅读(206)  评论(0编辑  收藏  举报