Php 分析数据org.json.JSONException时出错:标题没有值

Php 分析数据org.json.JSONException时出错:标题没有值,php,android,arrays,json,Php,Android,Arrays,Json,我想通过从JSON检索数据来创建一个列表项,但失败了,日志记录如下: 找不到类“android.graphics.drawable.RippleDrawable”,该类引用自方法android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering 分析数据时出错org.json.JSONException:标题没有值` 这是我的JSON: { "berita": [ { "id_berita":

我想通过从JSON检索数据来创建一个列表项,但失败了,日志记录如下:

  • 找不到类“android.graphics.drawable.RippleDrawable”,该类引用自方法
    android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering

  • 分析数据时出错
    org.json.JSONException
    :标题没有值`

这是我的JSON:

{
"berita": [
    {
        "id_berita": "1",
        "judul_berita": "abcdefgh",
        "gambar_berita": "media.jpg",
        "isi_berita": "arsgrdgrdgrdgrfdrffffffffffrvfsffsfsfsf"
    },
    {
        "id_berita": "2",
        "judul_berita": "ijklmnopqrst",
        "gambar_berita": "back.jpg",
        "isi_berita": "kbkjcbkjbcjkbckjanckjnakjcbjkabcjkabcjabcjhbcjdbcjdb"
    }
]
这是我的密码

protected Void doInBackground(Void... voids) {
        HttpHandler sh = new HttpHandler();
        String jsonStr = sh.makeServiceCall(url);
        Log.e(TAG, "Response from url : "+jsonStr);
        if(jsonStr != null){
            try{
                JSONObject jsonObject = new JSONObject(jsonStr);

                //getting node json array
                JSONArray berita = jsonObject.getJSONArray("berita");

                //looping semua berita
                for(int i = 0; i < berita.length(); i++){
                    JSONObject c = berita.getJSONObject(i);

                    String id_berita = c.getString("id_berita");
                    String judul_berita = c.getString("judul_berita");

                    HashMap<String, String> Berita = new HashMap<>();
                    Berita.put("id_berita", id_berita);
                    Berita.put("judul_berita", judul_berita);

                }
            }
            catch (final JSONException e){
                Log.e(TAG, "JSON parsing error : "+e.getMessage());
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        Toast.makeText(BeritaActivity.this, "JSON parsing error"+e.getMessage(), Toast.LENGTH_SHORT).show();
                    }
                });
            }

        }else {
            Log.e(TAG, "Tidak bisa mendapat JSON dari server");
            runOnUiThread(new Runnable() {
                @Override
                public void run() {
                    Toast.makeText(BeritaActivity.this, "Tidak bisa mendapat JSON dari server", Toast.LENGTH_SHORT).show();
                }
            });
        }

        return null;
    }

    @Override
    protected void onPostExecute(Void aVoid) {
        super.onPostExecute(aVoid);
        if(pDialog.isShowing()){
            pDialog.dismiss();
        }
        ListAdapter adapter = new SimpleAdapter(
                BeritaActivity.this, beritaList,
                R.layout.list_item, new String[]{"judul_berita"},
                new int[]{R.id.judulBerita});
        lv.setAdapter(adapter);
    }
}
受保护的Void doInBackground(Void…voids){
HttpHandler sh=新的HttpHandler();
字符串jsonStr=sh.makeServiceCall(url);
Log.e(标签,“来自url的响应:+jsonStr”);
if(jsonStr!=null){
试一试{
JSONObject JSONObject=新的JSONObject(jsonStr);
//获取节点json数组
JSONArray berita=jsonObject.getJSONArray(“berita”);
//循环塞缪亚贝里塔
对于(int i=0;i
您能指定哪一行不工作吗?我在这一行中得到错误,catch(final JSONException e)错误解析数据org.json.JSONException:json中的title`=>没有值没有“id\u berita”或“judul\u berita”。为了安全起见,你应该在获取字符串之前进行检查。Use.has(字符串)和.isNull(字符串)链接:Thx all,此问题已解决。。