WebService 安卓客户端调用和服务器端搭建
这段时间做了一个小程序,想通过WebService来供安卓客户端调用。先说一下安卓端的程序。之前没有进行过安卓+Java的编程,就先找网上的一个查询手机号码归属地例子来测试WebService。 在Android平台调用Web Service需要依赖于第三方类库ksoap2,它是一个SOAP Web service客户端开发包,主要用于资源受限制的Java环境。在Android平台中我们并不会直接使用ksoap2,而是使用ksoap2 android。KSoap2 Android 是Android平台上一个高效、轻量级的SOAP开发包。 客户端编程的时候参考了后面的博客链接博客,文章非常详细,按照文中给出的步骤和代码,很快编译通过,不过运行的时候点击了查询按钮之后,程序会退出。打开文中给出的网址,网页上贴着通知,网址搬迁并且给付费用户提供服务并且不再提供安卓端支持。换了另外几个网址提供的WebService接口,还是一样退出。之后调试时发现,当安卓端程序试图访问对方的WebService接口时,会捕捉到SoapFault,查看logcat打印的信息,“SoapFault - faultcode…“后面一长串错误信息,比如缺少传递的参数等等。 后来开始怀疑服务器是否能提供免费的接口,幸好小组成员有同时开始部署服务器端的WebService,连接之后发现不再有SoapFault,当然程序也不会退出了,不过还是有点小问题,客户端的参数传递不过去,但是服务器端可以传递数据给客户端,另外,我们自己部署的WebService的WSDL文件看起来和大多数的WSDL文件有些差别,比如传递参数的说明。 所以方向又放到WebService服务器端了,之前是通过java自带的WebService来做的接口,后来又试图使用第三方的CXF,AXIS等,查阅了很多方法,最后看到一本书《Java EE 6 企业级应用开发教程》,书中使用了Java EE来做WebService接口,非常简洁。我们之前使用的也是Java自带的WebService接口,只不过是Java,不是Java EE。重新下载一个eclipse-jee就行,还是一样的步骤。 总结一下: 补充一下步骤: 服务器端的步骤见 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |