その場合、下記のような関数を使う事で
Arrayだった場合 : そのままJSONArrayとして取得
Objectだった場合 : 要素として一つだけJSONObjectが含まれたJSONArray
それ以外 : 要素0のJSONArray
として一括でArrayとして扱えます。
private JSONArray convertJSONArray(String jsonString) { JSONArray ret=null; try { ret = new JSONArray(jsonString); Log.d(TAG, "convertJSONArray : Array"); Log.d(TAG, "convertJSONArray : ret = "+ ret.toString()); return ret; } catch (JSONException e) { ret = new JSONArray(); try { JSONObject json = new JSONObject(jsonString); ret.put(json); Log.d(TAG, "convertJSONArray : Object"); } catch (Exception e1) { Log.d(TAG, "convertJSONArray : Fails"); } Log.d(TAG, "convertJSONArray : ret = "+ ret.toString()); return ret; } }まあえばって公開するほどのコードでも無いんですが、いちいちArrayとObjectを切り替えるのがコード上面倒だったもんで、ちょっと悩みました。 なのでせっかくなんで公開しておきます。