1 pièce(s) jointe(s)
probleme : récupérer les données JSON avec la methode Volley
Bonjour,
Je suis débutant en Android et mon problème c'est que si je changerais mes données JSON l'application m'affiche les anciens données JSON .
d’après mes recherches sur le NET j'ai trouvé qu'il faut ajouté la méthode defaultretrypolicy
S.V.P aidez moi !!!!
Voici mon Code Java :
MainActivity.java
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
package com.example.ntic_pc.jsonapp;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
import com.android.volley.Request;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.JsonObjectRequest;
import org.json.JSONException;
import org.json.JSONObject;
import com.android.volley.DefaultRetryPolicy;
public class MainActivity extends AppCompatActivity {
Button button;
TextView Name,Email,Mobile;
String json_url = "http://imadovitch.000webhostapp.com/json.php";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button)findViewById(R.id.bn);
Name = (TextView)findViewById(R.id.nm);
Email = (TextView)findViewById(R.id.em);
Mobile = (TextView)findViewById(R.id.mb);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.GET, json_url,(String) null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
Name.setText(response.getString("Name"));
Email.setText(response.getString("Email"));
Mobile.setText(response.getString("Mobile"));
} catch (JSONException e) {
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(MainActivity.this,"Something went wrong",Toast.LENGTH_SHORT).show();
error.printStackTrace();
}
});
MySingleton.getInstance(MainActivity.this).addToRequestque(jsonObjectRequest);
}
});
}
} |
MySingleton.Java
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
package com.example.ntic_pc.jsonapp;
import android.content.Context;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.toolbox.Volley;
public class MySingleton {
private static MySingleton mInstance;
private RequestQueue requestQueue;
private static Context mCtx;
private MySingleton(Context context)
{
mCtx = context;
requestQueue = getRequestQueue();
}
public RequestQueue getRequestQueue()
{
if (requestQueue==null)
{
requestQueue = Volley.newRequestQueue(mCtx.getApplicationContext());
}
return requestQueue;
}
public static synchronized MySingleton getInstance(Context context)
{
if (mInstance==null)
{
mInstance = new MySingleton(context);
}
return mInstance;
}
public<T> void addToRequestque(Request<T> request)
{
requestQueue.add(request);
}
} |
JSON.php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
<?php
$arr =array('Name' => hello ,'Email' => salut, 'Mobile' => rmd);
echo json_encode($arr);
?> |
Mon interface
Pièce jointe 361366