Приложение получает данные от вебсервиса. Процедура получения данных запускается в сервисе. На устройстве с Android 4.4.0 всё работает корректно. На эмуляторе, под Android 6.0 падает.
SoapSerializationEnvelope soapEnvelope = new SoapSerializationEnvelope(SoapEnvelope.VER12);
soapEnvelope.dotNet = true;
soapEnvelope.setOutputSoapObject(soap_request);
soapEnvelope.implicitTypes = true;
List
transport.call(SOAP_ACTION, soapEnvelope, headers);
Падение происходит не сразу, а через несколько секунд после запуска запроса. Приблизительно это похоже на время которое нужно серверу для ответа.
Буду рад, если пнете в нужном направлении.
Лог очень большой, поэтому приведу только начало:
08-23 08:56:32.091 12612-12617/soap.watersmith.ua.soap A/art: art/compiler/dex/mir_method_info.cc:104] Check failed: invoke_type == kVirtual (invoke_type=direct, kVirtual=virtual)
08-23 08:56:32.176 12612-12617/soap.watersmith.ua.soap A/art: art/runtime/runtime.cc:366] Runtime aborting...
08-23 08:56:32.176 12612-12617/soap.watersmith.ua.soap A/art: art/runtime/runtime.cc:366] Aborting thread:
08-23 08:56:32.176 12612-12617/soap.watersmith.ua.soap A/art: art/runtime/runtime.cc:366] "Jit thread pool worker thread 0" prio=5 tid=2 Runnable (still starting up)
08-23 08:56:32.176 12612-12617/soap.watersmith.ua.soap A/art: art/runtime/runtime.cc:366] | group="" sCount=0 dsCount=0 obj=0x0 self=0xac2cf200
08-23 08:56:32.176 12612-12617/soap.watersmith.ua.soap A/art: art/runtime/runtime.cc:366] | sysTid=12617 nice=0 cgrp=default sched=0/0 handle=0xb2b2b930
08-23 08:56:32.176 12612-12617/soap.watersmith.ua.soap A/art: art/runtime/runtime.cc:366] | state=R schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
08-23 08:56:32.176 12612-12617/soap.watersmith.ua.soap A/art: art/runtime/runtime.cc:366] | stack=0xb2a2e000-0xb2a30000 stackSize=1018KB
08-23 08:56:32.176 12612-12617/soap.watersmith.ua.soap A/art: art/runtime/runtime.cc:366] | held mutexes= "abort lock" "mutator lock"(shared held)
Весь лог на pastebin по ссылке:
http://pastebin.com/Fe1z4FrP
Поменял в манифесте targetSDK на 23, (до этого был 17)
Объем лога при падении существенно уменьшился.
Более того, иногда падение происходит не сразу, после получения ответа сервера, а чуток позже, вот как на скрине:
http://prnt.sc/c9dop4
Ответ
Судя по тексту ошибки, "падает" не java-код, а сама виртуальная
машина, т.е. это баг в эмуляторе. – Roman 55 мин. назад
Проблема действительно была в эмуляторе. Друзья, не повторяйте моих ошибок, не игнорируйте просьбы студии обновиться.
После обновления "Google APIs Intel x86 Atom System Image 23" с ревизии 7 на 16!
Всё заработало.
Комментариев нет:
Отправить комментарий