2017-02-13 45 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:數據沒有值 at org.json.JSONObject.get(JSONObject.java:389) at org.json.JSONObject.getJSONObject(JSONObject.java:609) at 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) at android.os.AsyncTask $ 2.call(AsyncTask.java:295) at java.util.concurrent.FutureTask.run(FutureTask.java:237) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java :1113) at java.util.concurrent .ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:588) at java.lang.Thread.run(Thread.java:818)

+0

添加錯誤日誌和和模擬器的Android版本 –

回答

0

好吧,所以問題的原因是非常愚蠢的 - 我提交查詢在模擬器上敲擊鍵盤上的輸入(搜索功能)。看起來敲入enter不會在模擬器上正確觸發onQueryTextSubmit方法。您需要點擊模擬器上的提交按鈕。

相關問題