关于WebService的话题,作为一个Java屌丝,我想也不用多说了。只要读者是做"码农"这行的基本手到擒来。那么做为一个对Android不是很了解的屌丝"攻城狮"来说!那么初学 Android 这块WebService绝对是痛苦的。想必读者和我一样!痛苦不堪.我不像其他高大上的java高手那样,轻巧的就搞定了,然后贴出需要读者煞费苦心去看,结果又走进了死胡同!本屌,因为公司任务,必须要做!结果整整苦逼了我两个星期,最终老天不负有心人.星期五下午临下班,终于得到结果.....好辛苦的工作!如果读者还不是"码农",本屌由衷说一句:学挖掘机去吧。好了,废话太多了!开始说说代码。
ps:本屌不是给大家写论文,所以不想给读者介绍什么WebService!想知道什么是WebService的百度之。以下代码中,并不是完全案例,而是Clint端的逻辑片段。读者Copy时,同时本屌也希望多看看注释.
开始苦逼之路:
- 天才第一步,先找雀氏纸尿布。Android,貌似没有实现WebService的功能,我也不确定,反正我没有手写客户端的习惯。如果读者喜欢,那就自己动手吧。Googlo已经给Android WebService 客户端提供了Ksoap2-Android的项目。因此,我们的客户端需要导入Ksoap2的jar包。至于那些Asix1 、2,xfire、cfx那些,亲,我只能告诉你,那些包太多了,手机资源有限。所以我们用Ksoap2的jar包。下载地址:https://code.google.com/p/ksoap2-android/source/browse/m2-repo/com/google/code/ksoap2-android/ksoap2-android-assembly (个人建议:请使用翻墙工具,因为这是国外的网站,原因:保密。因为我是少先队队员),打开后,在页面找到Directoris字样,选择你喜欢的Ksoap2的版本。本屌使用了2.5.4 (没法,上司要求,不能用太新,不过我自己偷偷试了一下最新的,基本没有问题。)然后再filename中选择对应的jar下载。
- 然后把jar包导入到工程,这里本屌不想多说.我用的是Android studio编译工具,好像有很多公司用的是Eclipse for andriod.如果读者不知道怎么把jar包导入到工程!还是老规矩,百度之。
- 上面的事情做完,那么接下来才是重头戏。1.熟悉,WebService的wsdl文档的内容..要熟悉到,知道你所需要命名空间和接口函数的入参和出参,如果入参和出参是复杂对象,那么也要知道对象在wsdl中的定义是什么。如果服务端是你的写的,那么这步就可以忽略。