今天被这个问题困扰了一会,发现网上被此问题困扰的兄弟不少,
甚至有位兄弟被逼的反编译jar包去掉了这行exception呵呵。
经过一番折腾,解决了此问题,结合网上搜集和自己总结,经验如下:
1. 必须确保应用已经添加了网络通信权限
<uses-permission android:name="android.permission.INTERNET" />
2. soap请求的URL中的HOST部分不要使用ip地址,使用域名
3. SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
中的SOAP VER要和服务端对应,也可以低于服务端,但是不能高于服务端。
上述三点缺一不可,我讲述一下我的折腾过程供大家参考,
我最初由于马虎,没有做条件1 ,结果会报UnkownHostException,误导我把域名改为IP,
把域名改为IP后,虽然不会报UnkownHostException了,但是会报缺少权限,于是我加上条件1的权限,
加完之后,一切都正确,就总是报 org.xmlpull.v1.XmlPullParserException: expected: START_TAG ,