2015-02-05 13 views
13

Web servisini ksoap kullanarak çağırırken Android Lollipop uygulaması çöküyor.Cihazda uygulama kazası HTC M8 web servis çağrısı için OS Lollipop ile

bakınız hata günlüğü
Ben Android sürüm 5.0 Nexus 4 emülatörünüzde Aynı uygulamayı test ettik ve iyi çalışıyor

java.lang.NoSuchFieldError: No instance field headerOut of type [Lorg/kxml2/kdom/Element; in class Lorg/ksoap2/serialization/SoapSerializationEnvelope; or its superclasses (declaration of 'org.ksoap2.serialization.SoapSerializationEnvelope' appears in /system/framework/wifi-service.jar) 
at com.-----.---------.-----.----.services.AuthenticateUser.createHeader(AuthenticateUser.java:77) 
at com.-----.---------.-----.----.services.AuthenticateUser.authenticateUser(AuthenticateUser.java:49) 
at com.-----.---------.-----.----.services.---------GenericServiceThread.callWS(GenericServiceThread.java:219) 
at com.-----.---------.-----.----.services.---------GenericServiceThread.invokeWebServiceApi(GenericServiceThread.java:106) 
at com.-----.---------.-----.----.services.---------GenericServiceThread.run(GenericServiceThread.java:89) 

.

ben de HttpTransportSE için AndroidHttpTransport değiştirmek ama bunun için emin değil webservice

mHttpTransportSE = new AndroidHttpTransport (url); 
mHttpTransportSE.debug = true; // this is optional, use it if you don't 
mHttpTransportSE.call(Configuration.COM_SOAP_ACTION_AUTHENTICATEUSER, envelope); 
result = envelope.getResponse(); 

çağırmak için kod aşağıda kullanıyorum.
Bu değişiklik benim sorunumu çözüyor mu?
Bu sorun için başka bir çözüm var mı?

Önceden teşekkür ederiz.

+0

Başka bir cihazda kontrol ettin

rule org.ksoap2.** [email protected] 

komut satırı: Burada hızlı bir çözüm gerektiren herkes için

Jar Jar kurallar ve komut vardır? Bu lolipop özel çökmesi mi? –

+0

Cihazda OS lolipop ile test edilmedim. – Swap

+0

Çözümü deneyebilir misin? – wisemann

cevap

7

ksoap2 paket adını ksoap2clone olarak değiştirerek çözdüm. Çözümün iyi olduğunu bilmiyorum ama şimdi çalışıyor. Daha iyi bir çözüm bulursanız lütfen paylaşın.

Dosya ben aynı sorunları (HTC M8) sahip here.

+0

Teşekkürler wisemann, Bu diğer cihazlarda çalışıyor. Ancak HTC M8 cihazımda test edilmediğim için HTC M8 cihazında test edilmedi. – Swap

+0

HTC M8 üzerinde çalışıyor .. –

+0

@Vishal Khakhkhar: Paket adını değiştirerek HTC M8 ile aynı ksoap2clone.jar test ettiniz mi? veya HTC bu sorunu çözdü. – Swap

0

Aynı sorun burada. HTC'nin kendi ksoap2'sini kullanması gibi görünüyor. Bkz. "https://code.google.com/p/ksoap2-android/issues/detail?id=205&can=1&start=200"

+0

'da kaza yok Buna cevap vermediğine katılmıyorum. Doğru cevap budur - sorun HTC'nin ksoap2 uygulamasında yatıyor ve dolayısıyla cevabı yok. Alternatifleri olabilir. – hnilsen

+0

i hnilsen ile aynı fikirdeyim. ksoap2 paket adını değiştirmeye çalışacağım. – wisemann

+0

Ayrıca hnilsen ile aynı fikirdeyim – Swap

0

, ama bağımlılıkları ile ksoap2 3.4.0 kavanoz kullanıyorum. Stacktrace'den, HTC'deki birisinin ksoap2'yi dahil etmek için iyi bir fikir olacağını düşündüğü anlaşılıyordu. Ne yazık ki bunu düşünmediler ve Apache Commons ve HttpClient ile aynı hatayı yaptılar.

Paketi yeniden adlandırmak için jarjar kullanıyorum ve iyi çalışıyor gibi görünüyor.

rules.txt

java -jar jarjar-1.4.jar process rules.txt ksoap2-android-assembly-3.4.0-jar-with-dependencies.jar ksoap2-repackaged.jar 
İlgili konular