5

我打電話Java Web ServiceAndroid應用程序使用Soap請求。有一種方法可以通過應用程序調用,在Android版本中工作正常,在幾乎所有設備和三星Lollipop設備中都可以達到Kit Kat,但在HTC M8 Lollipop更新的設備上不起作用。
以下是我的代碼。
異常;連接後無法設置請求屬性;發生在Android棒棒糖宏達M8

HttpTransportSE ht = new HttpTransportSE("URL"); 
SoapObject so = new SoapObject("Namespace", "Method"); 
try { 
    SoapSerializationEnvelope se = new SoapSerializationEnvelope(SoapEnvelope.VER11); 
    so.addProperty("input1", data); 
    data = se.getResponse().toString();//This is where Exception occurs 

}catch(Exception ex){ 
    ex.printStackTrace(); 
} 

Exception試圖讓響應由註釋指示和精確Exception如下:當發生。

java.lang.IllegalStateException: Cannot set request property after connection is made 
at com.android.okhttp.internal.http.HttpURLConnectionImpl.setRequestProperty(HttpURLConnectionImpl.java:496) 
at com.android.okhttp.internal.http.DelegatingHttpsURLConnection.setRequestProperty(DelegatingHttpsURLConnection.java:258) 
at com.android.okhttp.internal.http.HttpsURLConnectionImpl.setRequestProperty(HttpsURLConnectionImpl.java:25) 
at org.ksoap2.transport.ServiceConnectionSE.setRequestProperty(ServiceConnectionSE.java:101) 
at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:156) 
at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:116) 

我一直在尋找這一點,但無法找到一個合適的回答,甚至一種解決方法。

我看了
Ksoap2 Android IllegalStateException

setRequestProperty method giving java.lang.IllegalStateException: Cannot set method after connection is made

我不知道爲什麼它在HTC M8 Lollipop設備,但是不能在三星Lollipop設備的發生。
任何建議或解決方法,非常感謝。
謝謝

回答

1

我認爲這可能解釋了這個問題。在線程中尋找粒子。
https://code.google.com/p/ksoap2-android/issues/detail?id=205&can=1&start=200
它說,

啊...他們可能已在其固件中加入ksoap2機器人..這 會解釋。不知道這是你可以做的任何事情,除了你使用的整個ksoap2-android軟件包以及你自己的命名空間中的任何依賴關係 。一個相當龐大的事業..

你可以做兩件可能的事情,以確定是否這是問題。

  1. 嘗試重命名ksoap2類名
  2. 直接訪問ksoap2類與package名稱前。