Страницы

Поиск по вопросам

среда, 10 июля 2019 г.

Android приложение падает при получении данных из сети

Приложение получает данные от вебсервиса. Процедура получения данных запускается в сервисе. На устройстве с Android 4.4.0 всё работает корректно. На эмуляторе, под Android 6.0 падает.
SoapSerializationEnvelope soapEnvelope = new SoapSerializationEnvelope(SoapEnvelope.VER12); soapEnvelope.dotNet = true; soapEnvelope.setOutputSoapObject(soap_request); soapEnvelope.implicitTypes = true;
List headers = new ArrayList(); headers.add(new HeaderProperty("Authorization", "Basic "+ Base64.encode(loginpassword.getBytes(Charset.forName("UTF-8"))))); HttpTransportSE transport = new HttpTransportSE(URL,120000); transport.debug = true;
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! Всё заработало.

Комментариев нет:

Отправить комментарий