Проблема с извлечением файла JSON с помощью Volley - PullRequest
0 голосов
/ 08 января 2020

Добрый день,

У меня проблема с получением файла JSON с использованием Android Studio. Как я могу позвонить по указанному c JSONObject, например, по моему коду ниже, я хочу знать, равен ли введенный номер телефона номеру JSONObject. Я пытаюсь прочитать JSONArray и сохранить отдельно в разных строках.

Каждый раз, когда я пытаюсь вызвать obj.getString("phonenum") внутри l oop, единственное значение, которое я получаю, это последнее значение.

Мой код следующий.

JSON Файл.

GetInfo. php

[
  {
    "id": 1,
    "name": "Angelo Dayao",
    "email": "angelo@gmail.com",
    "phonenum": "639201234567"
  },
  {
    "id": 2,
    "name": "Angelo Dayao",
    "email": "angelogg@g.com",
    "phonenum": "639161234567"
  },
  {
    "id": 3,
    "name": "Anna Chelzia",
    "email": "anna@g.com",
    "phonenum": "639771234567"
  }
]

JAVA Код ФАЙЛА

public void GetData(){
        StringRequest stringRequest = new StringRequest(Request.Method.GET, url,
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {
                        try {
                            JSONArray jsonArray = new JSONArray(response);

                            for(int i = 0; i < jsonArray.length(); i++){
                                try {
                                    JSONObject obj = null;

                                    obj = jsonArray.getJSONObject(i);

                                    if(obj.getString("phonenum") == phonenumber){
                                        Toast.makeText(getApplicationContext(), obj.getString("phonenum"), Toast.LENGTH_SHORT).show();
                                    }
                                } catch (JSONException e) {
                                    e.printStackTrace();
                                }
                            }
                        } catch (JSONException e) {
                            e.printStackTrace();
                        }


                    }
                },
                new Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {
                        //displaying the error in toast if occurrs
                        Toast.makeText(getApplicationContext(), error.getMessage(), Toast.LENGTH_SHORT).show();
                    }
                });


        RequestQueue requestQueue = Volley.newRequestQueue(this);
        requestQueue.add(stringRequest);

    }
...