2017-03-08 5 views
0

Je souhaite enregistrer des valeurs à partir de Response sur des variables de classe d'utilisateurs. Malheureusement, je ne peux pas.Comment puis-je retourner la valeur de onResponse of Volley?

Aidez-moi s'il vous plaît.

Voici le code JSONObjectRequest

JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.GET, 
    jsonURLFull, new Response.Listener<JSONObject>() { 

     @Override 
     public void onResponse(JSONObject response) { 
      Log.d(ActivityLogin.class.getSimpleName(), response.toString()); 

      try { 
       User userClass = new User(); 

       JSONObject jsonUser = response.getJSONObject("user"); 
       userClass.id = jsonUser.getInt("id"); 
       userClass.name = jsonUser.getString("email"); 
       userClass.email = jsonUser.getString("email"); 

      } catch (JSONException e) { 
       e.printStackTrace(); 
       Toast.makeText(getApplicationContext(), 
       "Error: " + e.getMessage(), 
       Toast.LENGTH_LONG).show(); 
      } 
      hidepDialog(); 
     } 
    }, new Response.ErrorListener() { 

     @Override 
     public void onErrorResponse(VolleyError error) { 
      VolleyLog.d(ActivityLogin.class.getSimpleName(), "Error: " + error.getMessage()); 
      Toast.makeText(getApplicationContext(), 
      error.getMessage(), Toast.LENGTH_SHORT).show(); 
      hidepDialog(); 
     } 
    }); 
    AppController.getInstance().addToRequestQueue(jsonObjReq); 

Ceci est la classe User:

public class User { 

    public int id; 
    public String name; 
    public String email; 

} 

C'est le JSON de l'API:

{"user":{"id":12,"name":"test_name","email":"[email protected]",}} 
+0

s'il vous plaît appliquer getter setter dans la classe utilisateur parce que si vous ne faites pas it.It seraient déchets collectés. –

+0

Utilisez Setter Getter, puis passez votre objet de classe User "userClass", où vous souhaitez utiliser ces valeurs. – Chandan

Répondre

0

Deux points pour vous:

1.you parse email à name.

userClass.name = jsonUser.getString("name"); 

données 2.Votre JSON est erroné en raison de la dernière ','

{"user":{"id":12,"name":"test_name","email":"[email protected]"}}