2017-02-13 8 views
0

Итак, у меня есть JSONException (запрос API), но только когда я запускаю приложение на эмуляторе (на разных виртуальных устройствах, различные API). Проблема существует только с одним запросом. Когда я вызываю те же данные в другом месте приложения, он работает. На физическом устройстве он работает отлично. Вопрос в том, что может быть причиной этой ошибки на эмуляторе, и если я должен беспокоиться?org.json.JSONException: Нет значения для данных: только эмулятор, работает на физическом устройстве

Android Студия: 2.2.3

Ошибка:

E/EGL_emulation: TID 2936: eglSurfaceAttrib (1165): Ошибка 0x3009 (EGL_BAD_MATCH) E/QueryUtils: Проблема разбора город JSON приводит орг .json.JSONException: Нет значения для данных на org.json.JSONObject.get (JSONObject.java:389) в org.json.JSONObject.getJSONObject (JSONObject.java:609) в com.mobileallin.polskiesmogi.QueryUtils .extractFeatureFromJson (QueryUtils.java:171) at com.mobileallin.polskie smogi.QueryUtils.fetchcityData (QueryUtils.java:58) на com.mobileallin.polskiesmogi.CityLoader.loadInBackground (CityLoader.java:54) на com.mobileallin.polskiesmogi.CityLoader.loadInBackground (CityLoader.java:16) на android.content.AsyncTaskLoader.onLoadInBackground (AsyncTaskLoader.java:312) в android.content.AsyncTaskLoader $ LoadTask.doInBackground (AsyncTaskLoader.java:69) в android.content.AsyncTaskLoader $ LoadTask.doInBackground (AsyncTaskLoader.java:66) на android.os.AsyncTask $ 2.call (AsyncTask.java:295) на java.util.concurrent.FutureTask.run (FutureTask.java:237) на java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java : 1113) по адресу java.util.concurrent .ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:588) в java.lang.Thread.run (Thread.java:818)

+0

Добавить журнал ошибок и эмулятор и версия для Android –

ответ

0

Итак, причина проблемы была очень глупо - я представления запроса на эмуляторе, нажав кнопку ввода на клавиатуре (функция поиска). Кажется, что попадание в enter не вызывает правильность метода onQueryTextSubmit на эмуляторе. Вам нужно нажать кнопку отправки на эмуляторе.