Ich bin um dieses Problem, es bereits vorbei wie 2 Stunden, grundsätzlich versuche ich, einige Daten von meinem Server zu bekommen und die Volley Callback nie ausgeführt werden.Volley erhalten Anfrage nicht Server
Basicly Ich habe eine Schnittstelle definiert, um die Volley Anfrage zu bearbeiten, so dass für die getRequest ich habe so etwas wie dies:
public void getDataObjectVolley(final String requestType, String url, final String token){
try {
RequestQueue queue = Volley.newRequestQueue(mContext);
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.GET, url,null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
if(mResultCallback != null)
mResultCallback.notifySuccess(requestType, response);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
}) {
@Override
public Map<String, String> getHeaders(){
Map<String, String> headers = new HashMap<>();
Log.d("tokenXX",token);
headers.put("x-access-token", token);
return headers;
}
};
jsonObjectRequest.setRetryPolicy(new DefaultRetryPolicy(30000, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
queue.add(jsonObjectRequest);
}catch(Exception e){
}
}
dann auf meine Tätigkeit intialize i den Rückruf und übergeben Sie die Funktionen zu ihm:
IResult mResultCallbackGET = null;
onCreate ich die loadPhotos nennen
loadPhotoDetails();
dann das Verfahren ist wie folgt:
private void loadPhotoDetails() {
final String urlDetails = connectionTxt + "/fotos/" + fotoId;
loadPhotoInfo();
mVolleyService = new VolleyService(mResultCallbackGET,this);
mVolleyService.getDataObjectVolley(GETREQUEST,urlDetails,token);
}
die loadPhotoInfo
void loadPhotoInfo(){
Log.d("HELLOWORLD","HELLOWOLD");
mResultCallbackGET = new IResult() {
@Override
public void notifySuccess(String requestType, JSONObject response) {
/*Log.d("HELLOWOLRD","HELLOWOLD1");
Log.d("resposta123",response.toString());
String path = null;
Double lat = null;
Double lon = null;
Double alt = null;
Boolean hasFlower = null;
Boolean hasLeaf = null;
Boolean hasThorn = null;
Boolean hasFruit = null;
String flowerColor = null;
String time = null;
try {
path = response.getString("image");
lat = response.getDouble("lat");
lon = response.getDouble("lon");
alt = response.getDouble("altitude");
hasFlower = response.getBoolean("hasFlower");
hasLeaf = response.getBoolean("hasLeaf");
hasThorn = response.getBoolean("hasThorn");
hasFruit = response.getBoolean("hasFruit");
flowerColor = response.getString("flowerColor");
time = response.getString("date");
} catch (JSONException e) {
e.printStackTrace();
}
photoDetails = new Photo(path,lat,lon,alt,time,hasFlower,hasLeaf,hasThorn,hasFruit,flowerColor);
Log.d("fruit12",String.valueOf(hasFlower));
Log.d("fruit12",String.valueOf(hasLeaf));
Log.d("fruit12",String.valueOf(hasThorn));
if(hasFruit){
hasFruitTxt.setText("Sim");
}
else{
Log.d("fruit","false");
hasFruitTxt.setText("Não");
}
if(photoDetails.getHasFlower()){
hasFlowerTxt.setText("Sim");
}
else{
hasFlowerTxt.setText("Não");
}
if(photoDetails.getHasThorns()){
hasThornsTxt.setText("Sim");
}
else{
hasThornsTxt.setText("Não");
}
if(photoDetails.getHasLeaf()){
hasLeafTxt.setText("Sim");
}
else{
hasLeafTxt.setText("Não");
}*/
Log.d("HELLOWOLRD","HELLOWOLD1");
}
@Override
public void notifySuccess(String requestType, JSONArray response) {
Log.d("HELLOWOLRD","HELLOWOLD2");
}
@Override
public void notifyError(String requestType, VolleyError error) {
Log.d("HELLOWOLRD","HELLOWOLD3");
}
};
}
euch sehen, dass ich log 4 hallo Welten haben kann, es kommt nur der erste, es trifft nie der Server, irgendwelche Hilfe dabei?
Dank viel