Android XMLPullParserException上的ksoap2:使用3g连接时出现意外令牌

Android XMLPullParserException上的ksoap2:使用3g连接时出现意外令牌,android,soap,wifi,ksoap2,3g,Android,Soap,Wifi,Ksoap2,3g,我使用ksoap2版本2.5.4从基于cordova的android应用程序向服务器发送soap请求。这在使用测试设备的wifi连接时非常有效,但在使用3g连接时就会失败 测试的设备是Nexus7 我已经到处寻找这个问题,但还没有找到解决办法 使用wifi连接时,响应看起来很好,但每当我切换到使用3g时,我都会出现以下错误: org.xmlpull.v1.XmlPullParserException: Unexpected token (position:TEXT jsoapenv:Env..

我使用ksoap2版本2.5.4从基于cordova的android应用程序向服务器发送soap请求。这在使用测试设备的wifi连接时非常有效,但在使用3g连接时就会失败

测试的设备是Nexus7

我已经到处寻找这个问题,但还没有找到解决办法

使用wifi连接时,响应看起来很好,但每当我切换到使用3g时,我都会出现以下错误:

 org.xmlpull.v1.XmlPullParserException: Unexpected token (position:TEXT jsoapenv:Env...@1:248 in java.io.InputStreamReader@4164ce20) 
    at org.kxml2.io.KXmlParser.next(KXmlParser.java:426)
    at org.kxml2.io.KXmlParser.next(KXmlParser.java:310)
    at org.kxml2.io.KXmlParser.nextTag(KXmlParser.java:2029)
    at org.ksoap2.SoapEnvelope.parse(SoapEnvelope.java:126)
    at org.ksoap2.transport.Transport.parseResponse(Transport.java:90)
    at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:179)
    at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:90)
    at se.icecon.poc.SOAPRequest.login(SOAPRequest.java:119)
    at se.icecon.poc.SOAPRequest.execute(SOAPRequest.java:37)
    at org.apache.cordova.api.Plugin$1.run(Plugin.java:78)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
    at java.lang.Thread.run(Thread.java:856)
这是我的请求代码

private String login (String username, String password) {
    SoapObject request = new SoapObject(NAMESPACE, "LoginRequestMessage");
    request.addProperty("username", username);
    request.addProperty("password", password);

    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
    envelope.dotNet = true;
    envelope.setOutputSoapObject(request);

    HttpTransportSE ht = new HttpTransportSE(URL);
    ht.debug = true;
    try {
        ht.call(SOAP_ACTION, envelope);
        return ht.responseDump;
    } catch (Exception e) {
        e.printStackTrace();
    }
    return "";
}
似乎在使用3g时,一些字节被添加到响应中,并在一定程度上进行了移位,因此以某种方式破坏了请求中的其余数据

我目前的猜测是,这是一个类似的东西,但我只是得到了一些剩余的字符,搞砸了其余的不知何故

提前感谢您提供的任何可能会将其推向正确方向的提示