Как сделать запрос (тип: POST) JSONObject в Android с помощью библиотеки залпа? - PullRequest
0 голосов
/ 01 октября 2018

Я хочу сделать JsonObjectRequest, используя метод POST с библиотекой залпа, чтобы я мог сохранить свои данные на сервере.

Для того же, у меня есть API jsonObject следующим образом:

{"settings":{"notification":30,"time":4}}

Код Java для этого кода следующий:

 public void sendrequest(String urlset)
    {
        RequestQueue requestQueue1=Volley.newRequestQueue(this);

        JSONObject json=new JSONObject();

        JsonObjectRequest jsonObjectRequest1=new JsonObjectRequest(Request.Method.POST, urlset, json, new Response.Listener<JSONObject>() {
            @Override
            public void onResponse(JSONObject response) {
//code for getting some response from the method
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
//code in order to check the error 
            }
        });

    }

Как это можно сделать, чтобы я мог разместить свои данные на сервере, используя приведенный выше код (для справки).

Заранее спасибо.

После нескольких попыток я попытался сделать это:

public void sendrequest(String urlset)
    {
        RequestQueue requestQueue1=Volley.newRequestQueue(this);

        String a,b;
        SharedPreferences sharedPreferences1=getSharedPreferences("MyPreferences",MODE_PRIVATE);

        a=sharedPreferences1.getString("list_preference_1","");
        b=sharedPreferences1.getString("list_preference_2","");

        //a=sharedPreferences1.getInt("list_preference_1", 1);
        //b=sharedPreferences1.getInt("list_preference_2", 1);


        JSONObject json=new JSONObject();

        try {
            //JSONObject ob=json.getJSONObject("settings");
            json.put("notification",Integer.parseInt(a));
            json.put("time",Integer.parseInt(b));
        } catch (JSONException e) {
            e.printStackTrace();
            Toast.makeText(this, "Error 1", Toast.LENGTH_SHORT).show();
        }

        JSONObject jsonfinal=new JSONObject();

        try {
            jsonfinal.put("settings",json);
        } catch (JSONException e) {
            e.printStackTrace();
            Toast.makeText(this, "Error 2", Toast.LENGTH_SHORT).show();
        }


        JsonObjectRequest jsonObjectRequest1=new JsonObjectRequest(Request.Method.POST, urlset, jsonfinal, new Response.Listener<JSONObject>() {
            @Override
            public void onResponse(JSONObject response) {

                Toast.makeText(SettingsActivity.this, "Changes made to server", Toast.LENGTH_SHORT).show();
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {

                Toast.makeText(SettingsActivity.this, "Check internet connectivity", Toast.LENGTH_SHORT).show();
            }
        });

        requestQueue1.add(jsonObjectRequest1);

    }

Но теперь мое приложение теперь падает.Может ли кто-нибудь помочь мне с этим?

...