您的位置:首页 > 移动开发 > Android开发

android访问webService

2016-03-08 09:11 399 查看
http://www.webxml.com.cn/zh_cn/web_services.aspx免费webservices接口

在Android平台调用Web Service需要依赖于第三方类库ksoap2,不要在主线程操作。

需要定义命名空间、方法名、SoapAction、endPoint(方法地址)

步骤:

1、初始化请求的SoapObject

2、初始化请求SoapObject的参数

3、初始化SoapSerializationEnvelope

4、建立连接HttpTransportSE httpTransportSE = new HttpTransportSE(url);

5、调用WebService(其中参数为1:命名空间+方法名称,2:Envelope对象):

transport.call(serviceNameSpace+getWeatherbyCityName, envelope);

6、获取返回值。

// 指定WebService的命名空间和调用的方法名
SoapObject rpc = new SoapObject(nameSpace, methodName);

// 设置需调用WebService接口需要传入的两个参数mobileCode、userId
rpc.addProperty("mobileCode", "");
rpc.addProperty("userID", "");

// 生成调用WebService方法的SOAP请求信息,并指定SOAP的版本
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER12);

envelope.bodyOut = rpc;
// 设置是否调用的是dotNet开发的WebService
envelope.dotNet = true;
// 等价于envelope.bodyOut = rpc;
//        envelope.setOutputSoapObject(rpc);

HttpTransportSE transport = new HttpTransportSE(endPoint);
try {
// 调用WebService
transport.call(soapAction, envelope);
} catch (Exception e) {
e.printStackTrace();
}
//        // 获取返回的数据
SoapObject object = (SoapObject) envelope.bodyIn;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: