1

私はこのコードを持っています:

HJRestClient.post(path, params, new JsonHttpResponseHandler() {
        @Override
        public void onSuccess(int statusCode, Header[] headers, JSONObject response) {

            try {
                JSONArray array = response.getJSONArray("tags");
                if (adDetailViewAdapter != null) {
                    adDetailViewAdapter.setTags(array);
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }

        }
    });

JSONArray array = response.getJSONArray("tags");例外を除いて回線でクラッシュしていますW/System.err: org.json.JSONException: No value for tags

例外をキャッチするためのコードを作成しましたが、キャッチされず、アプリがクラッシュすることはありません。

私は 2 つのデバイス Samsung Galaxy Note 5 を持っAndroid v6.0.1ていexceptionます。

別の Huawei Mate 7が引っかかってクラッシュすることはありませんAndroid v4.4.2exception

私も書いた:

catch (Exception exception) {}

しかし、それでもクラッシュしています。

何か助けはありますか?

4

1 に答える 1

0

このようにする必要があります:

HJRestClient.post(path, params, new JsonHttpResponseHandler() {
        @Override
        public void onSuccess(int statusCode, Header[] headers, JSONObject response) {
            try {
                if(response!=null&&response.has("tags")){
                    JSONArray array = response.getJSONArray("tags");
                    if (adDetailViewAdapter != null) {
                        adDetailViewAdapter.setTags(array);
                    }
                }

            } catch (JSONException e) {
                e.printStackTrace();
            }

        }
    });

これがあなたを助けることを願っています。

于 2016-05-10T11:37:54.523 に答える