Android个人学习笔记-使用myeclipse快速创建webservice并在Android中调用(续)

来源:互联网 发布:深圳十六号公寓知乎 编辑:程序博客网 时间:2024/05/01 13:18

2、Android端webservice的调用

package net.zmqc.service;import org.ksoap2.SoapEnvelope;import org.ksoap2.serialization.SoapObject;import org.ksoap2.serialization.SoapSerializationEnvelope;import org.ksoap2.transport.HttpTransportSE;public class InfoWebService {public static String soapCallWebService(double p_x,double p_y) {String result = "无数据出现!!!!!!!!";String url = "http://127.0.0.1:8080/InfoGpsService/InfoServicePort";String nameSpace = "http://service.zmqc.net/";//调用的方法String methodName = "getInfoList";          //创建httpTransportSE传输对象        HttpTransportSE ht = new HttpTransportSE(url);        ht.debug = true;        //使用soap1.1协议创建Envelop对象        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);        //实例化SoapObject对象        SoapObject request = new SoapObject(nameSpace, methodName);               //设置参数,参数名不一定需要跟调用的服务器端的参数名相同,只需要对应的顺序相同即可               request.addProperty("arg0", p_x+"");        request.addProperty("arg1", p_y+"");        envelope.bodyOut = request;try {// web service请求ht.call(null, envelope);// 获取返回的数据 result = envelope.getResponse().toString();} catch (Exception e) {// TODO: handle exceptione.printStackTrace();result = "连接出错了";}return result;}}

调用采用的是ksoap,下图是ksoap2-...jar包,可以百度下载

这样在activity里面就可以获取啦,该Android应用的功能主要有完成定位,并将定位经纬度作为参数调用web服务,然后会返回一个json字符串,通过对字符串的解析,获得Information

0 0