как заполнить json данные из нескольких файлов в двух представлениях переработчика в java - PullRequest
0 голосов
/ 27 марта 2020

Как я могу проанализировать json данные, полученные из двух php файлов, и добавить их к двум представлениям утилизатора в android.

Код интерфейса для модернизации приведен ниже:

   public interface ViewTopProdInterface {

        String VIEWTOPPRODURL = "https://yasirtechs.000webhostapp.com/android_api/";

        @GET("view_top_prod.php")
        Call<String> getTopProd();
    }

Первый php файл, который отправляет json данные с использованием кода:

$query= "SELECT * FROM products where status = '1' and type = '1' ";
        $result= mysqli_query($con, $query);

        $prod_detail_response = array();

        if(mysqli_num_rows($result) > 0 ) {  



            while ($row = mysqli_fetch_assoc($result)) {



                array_push($prod_detail_response,array("id" => $row['id'], "name" => $row['name'], "urdu_name" => $row['urdu_name'], "image" => $website_path."".$row['image'], "price_type" => $row['price_type'], "price" => $row['price'] ));


            }

            echo json_encode(array("data"=>$prod_detail_response));

        }

Retrofit call to get json data is below:
Retrofit retrofit = new Retrofit.Builder()
                .baseUrl(ViewTopProdInterface.VIEWTOPPRODURL)
                .addConverterFactory(ScalarsConverterFactory.create())
                .build();

        ViewTopProdInterface api = retrofit.create(ViewTopProdInterface.class);
        Call<String> call = api.getTopProd();
 call.enqueue(new Callback<String>() {
            @Override
            public void onResponse(Call<String> call, Response<String> response) {

                if (response.isSuccessful()) {
                    if (response.body() != null) {

                        progressDialog.dismiss();


                        String jsonresponse = response.body();

                        writeRecycler(jsonresponse);

                    } else {
                        progressDialog.dismiss();
                        Log.i("onEmptyResponse", "Returned empty response");//Toast.makeText(getContext(),"Nothing returned",Toast.LENGTH_LONG).show();
                        Toast.makeText(getApplicationContext(),"Empty Response",Toast.LENGTH_LONG).show();
                    }
                }
            }

            @Override
            public void onFailure(Call<String> call, Throwable t) {

                progressDialog.dismiss();
                Toast.makeText(getApplicationContext(),"Please connect your internet",Toast.LENGTH_LONG).show();
            }
        });

RecyclerView.LayoutManager topProdMng = new LinearLayoutManager(getApplicationContext(),LinearLayoutManager.HORIZONTAL,false);
topProds.setLayoutManager(topProdMng);
mAdapter = new TopProductsAdapter(this,modelRecyclerArrayList);
topProds.setAdapter(mAdapter);

У меня есть еще один php с таким же кодом, определенным выше, но с другими данными json.

У меня есть второй вид переработчика с именем "fruitsProds". Как я могу разобрать json данные, полученные со второго php и добавить их в представление переработчика "fruitsProds"

...