简直不能忍!org.xmlpull.v1.XmlPullParserException: expected:
相信很多朋友在接触android调用webservice的时候都会下载过一款天气预报的源码:
Android天气预报点击打开链接 该源码在模拟器中完美运行!满心欢喜的想在android手机上运行看看。一看马上傻眼了!系统抛出了异常: org.xmlpull.v1.XmlPullParserException: expected: START_TAG 推度娘摸姑狗一番之后,发现中外友人苦手其中叫苦不迭!! 一下是选取有代表性的粘贴给各位看,估计搜到这篇文章的同学都已经尝试过的: 1. 在AndroidManifest.xml 中加入 访问网络的权限。 <uses-permission android:name="android.permission.INTERNET"/> 2. SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);? 中的SOAP VER要和服务端对应,也可以低于服务端,但是不能高于服务端; 3. soap请求的URL中的HOST部分不要使用ip地址,使用域名; 4.注意你的webservice的地址(Url)是否以***.wsdl或者***.?wsdl结束的。如果是,要去掉后面的.wsdl或者.?wsdl。 基本上以XmlPullParserException为关键字,或者以整条异常为关键字搜索的结果都是上面这四点。 小弟不才,苦思冥想N久,无意中发现了在手机上如果用WIFI连接的话,异常消除!! 但切换为GPRS后,异常照样。因此估计问题所在于此! 于是,改变关键字 webservice gprs访问受限 终于找到了解决的方法: 其实很简单!和你的程序一点关系都没有!这就是: 将GPRS的接入点选择为CMWAP!而不是CMNET!! 我颤抖着尝试了一下,异常成功解决!! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |