位置: 编程技术 - 正文
推荐整理分享安卓中的SOAP消息和WebService(android使用so),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:安卓 asp,android使用so,安卓 sorted,安卓 sorted,安卓 asp,安卓 asp,安卓 asp,android soong,内容如对您有帮助,希望把文章链接给更多的朋友!
1、SOAP消息 简单对象访问协议(Simple Object Access Protocol,SOAP)是一种标准化的通信规范,主要用于Web服务(Web Service)。 SOAP使用Internet应用层协议作为其传输协议。SMTP及HTTP协议都可以用来传输SOAP消息,SOAP亦可以通过HTTPS传输。一条SOAP消息就是一个普通的XML文档,包含下列元素: (1)必须的Envelope元素,可把此XML文档标识为一条SOAP消息。 (2)可选的Header元素,包含头部信息。 (3)必须的Body元素,包含所有的调用和响应消息。 (4)可选的Fault元素,提供有关在处理此消息时发生错误的信息。 SOAP消息的重要语法规则如下: (1)SOAP消息必须使用XML来编码。 (2)SOAP消息必须使用SOAP Envelope命名空间。 (3)SOAP消息必须使用SOAP Encoding命名空间。 (4)SOAP消息不能包含DTD引用。 (5)SOAP消息不能包含XML处理指令。
2、调用WebService SOAP调用WebService的具体步骤如下:
步骤一:添加ksoap2包。可以从网址 SoapObject request = new SoapObject( “getName”); SoapObject类的第一个参数表示WebService的命名空间,可以从WSDL文档中找到WebService的命名空间;第二个参数表示要调用的WebService方法名。
步骤三:设置调用方法的参数值,如果没有参数,可以省略。设置方法的参数值的代码如下: request.addProperty(“param1”,”value”); request.addProperty(“param2”,”value”); 要注意的是,addProperty方法的第一个参数虽然表示调用方法的参数名,但该参数值并不一定与服务端的WebService类中的方法参数名一致,只要设置参数的顺序一致即可。
步骤四:生成调用WebService方法的SOAP请求信息。该信息由SoapSerializationEnvelope对象描述,代码如下: SoapSerializationEnvelope envelope=new SoapSerializationEnvelope(SoapEnvelope.VER); envelope.bodyOut=request; envelope.dotNet=true; 创建SoapSerializationEnvelope对象时需要通过SoapSerializationEnvelope类的构造方法设置SOAP协议的版本号。该版本号需要根据服务端WebService的版本号设置。在创建SoapSerializationEnvelope对象后,不要忘了设置SoapSerializationEnvelope类的bodyOut属性,该属性的值就是在步骤2创建的SoapObject对象。
步骤五:创建HttpTransportSE对象。通过HttpTransportSE类的构造方法可以指定WebService的WSDL文档的URL。 HttpTransportSE ht=new HttpTransportSE (“ ht.call(null,envelope); call方法的第一个参数一般为null,第2个参数就是在步骤四创建的SoapSerializationEnvelope对象。
步骤七:使用getResponse方法获得WebService方法的返回结果,代码如下: SoapObject soapObject=(SoapObject)envelope.getResponse();
步骤八:解析返回的内容。
3、代码示例
版权声明:本文为博主原创文章,未经博主允许不得转载。
关于webservice的问题 今天在使用webservice调用接口的时候出现一个问题就是,连接服务器成功但是感觉参数总是没传过去。比如我做一个请求获取号码归属地的请求。使用webs
[安卓]手机管家(十八)一键 锁屏清理线程以及widget 有些broadcastReceiver不能在manifest里静态注册(不用运行起来就能收到)锁屏是不能静态注册的,非常频繁的锁屏,动态注册,绑到service里最好,这样生命周
Android开发:findViewById返回null的解决办法 问题:Android开发:findViewById返回null的解决办法解决办法:在用Eclipse进行Android的界面开发,通过findViewById试图获取界面元素对象时,该方法有时候返回null
标签: android使用so
本文链接地址:https://www.jiuchutong.com/biancheng/381010.html 转载请保留说明!上一篇:安卓模拟器错误PANIC: Could not open(安卓模拟器错误怎么办)
下一篇:关于webservice的问题(webservice规范)
友情链接: 武汉网站建设