2017-03-15 4 views
1

Ich habe eine Android-App entwickelt, die die Sensordaten zum Lampenserver sendet, um Daten über Dienste im Hintergrund zu senden, und für die Sicherung habe ich PHP verwendet. Wenn ich die App starte, starte ich die Hintergrunddienste Ich bekomme die Daten erfolgreich eingefügt Nachricht vom Server Die Lampenserverzeilen werden aktualisiert, aber die Werte werden nicht gespeichert. NULL-Werte werden gespeichert, bitte helfen Sie mir herauszufinden, wo das Problem im Code ist?die Daten werden nicht richtig empfangen?

public void data() throws JSONException { 
final String LIGHTSENS, LIGHTDATA, TEMPSENSOR, TEMPDATA, AMBTEMPSENSOR, AMBTEMDATA, PRESSURESENS, PRESSUREDATA, LATTITUDE, LONGITUDE, DATE, TIME; 
     LIGHTSENS = String.valueOf(lr1); 
     LIGHTDATA = String.valueOf(ld1); 
     TEMPSENSOR = String.valueOf(tr1); 
     TEMPDATA = String.valueOf(td1); 
     AMBTEMPSENSOR = String.valueOf(atr1); 
     AMBTEMDATA = String.valueOf(atd1); 

     PRESSURESENS = String.valueOf(pr1); 
     PRESSUREDATA = String.valueOf(pd1); 
     LATTITUDE = String.valueOf(la); 
     LONGITUDE = String.valueOf(lg); 


StringRequest stringRequest = new StringRequest(Request.Method.POST, Server_url, 
       new Response.Listener<String>() 
       { 
        @Override 
        public void onResponse(String response) 
        { 
         Toast.makeText(sens.this, response.toString(), Toast.LENGTH_SHORT).show(); 


        } 
       }, new Response.ErrorListener() 
     { 
      @Override 
      public void onErrorResponse(VolleyError error) 
      { 

       Toast.makeText(sens.this, error.toString(), Toast.LENGTH_SHORT).show(); 
      } 
     }) { 
      @Override 
      protected Map<String, String> getParams() throws AuthFailureError, AuthFailureError { 
       HashMap<String, String> params = new HashMap<String, String>(); 
       params.put("LIGHTSENS", LIGHTSENS); 
       params.put("LIGHTDATA", LIGHTDATA); 
       params.put("TEMPSENSOR", TEMPSENSOR); 
       params.put("TEMPDATA", TEMPDATA); 
       params.put("AMBTEMPSENSOR", AMBTEMPSENSOR); 
       params.put("AMBTEMDATA", AMBTEMDATA); 
       params.put("PRESSURESENS", PRESSURESENS); 
       params.put("PRESSUREDATA", PRESSUREDATA); 
       params.put("LATTITUDE", LATTITUDE); 
       params.put("LONGITUDE", LONGITUDE); 


       return super.getParams(); 
       //params.put("Content-Type", "application/json; charset=utf-8"); 
       //params.put("User-agent", System.getProperty("http.agent")); 

       //return params; 

      } 

     }; 

     //Mysingleton.getmInstance(sens.this).addTorequestque(stringRequest); 


     // RequestQueue rq = Volley.newRequestQueue(this); 
     RequestQueue requestQueue= Volley.newRequestQueue(this); 
     requestQueue.add(stringRequest); 

     // RequestQueue requestQueue = Volley.newRequestQueue(this); 
     //requestQueue.add(stringRequest); 
    } 
+0

warum Sie super.getParams zurückkehren(); –

+0

auch wenn ich return.params setzen; Ich bin nicht in der Lage, so etwas zu bekommen, wie ich es probiert habe. Sie können sehen, dass ich diese Codezeile kommentiert habe. – bhavya

+0

Bitte debuggen Sie zuerst Ihren Dienst, um sicherzustellen, dass Sie null erhalten ... Die Wahrscheinlichkeit ist groß, dass Ihr Dienst ein Problem beim Einfügen von Daten hat. –

Antwort

0

die Sie interessieren,

private void data() { 

     final String LIGHTSENS, LIGHTDATA, TEMPSENSOR, TEMPDATA, AMBTEMPSENSOR, AMBTEMDATA, PRESSURESENS, PRESSUREDATA, LATTITUDE, LONGITUDE, DATE, TIME; 
     LIGHTSENS = String.valueOf(lr1); 
     LIGHTDATA = String.valueOf(ld1); 
     TEMPSENSOR = String.valueOf(tr1); 
     TEMPDATA = String.valueOf(td1); 
     AMBTEMPSENSOR = String.valueOf(atr1); 
     AMBTEMDATA = String.valueOf(atd1); 

     PRESSURESENS = String.valueOf(pr1); 
     PRESSUREDATA = String.valueOf(pd1); 
     LATTITUDE = String.valueOf(la); 
     LONGITUDE = String.valueOf(lg); 

     StringRequest stringRequest = new StringRequest(Request.Method.POST, Server_url, 
       new Response.Listener<String>() { 
        @Override 
        public void onResponse(String response) { 
         Toast.makeText(sens.this, response.toString(), Toast.LENGTH_SHORT).show(); 
        } 
       }, 
       new Response.ErrorListener() { 
        @Override 
        public void onErrorResponse(VolleyError error) { 
         Toast.makeText(sens.this, error.toString(), Toast.LENGTH_SHORT).show(); 
        } 
       }) { 
      @Override 
      protected Map<String, String> getParams() { 
       Map<String, String> params = new HashMap<>(); 
       params.put("LIGHTSENS", LIGHTSENS); 
       params.put("LIGHTDATA", LIGHTDATA); 
       params.put("TEMPSENSOR", TEMPSENSOR); 
       params.put("TEMPDATA", TEMPDATA); 
       params.put("AMBTEMPSENSOR", AMBTEMPSENSOR); 
       params.put("AMBTEMDATA", AMBTEMDATA); 
       params.put("PRESSURESENS", PRESSURESENS); 
       params.put("PRESSUREDATA", PRESSUREDATA); 
       params.put("LATTITUDE", LATTITUDE); 
       params.put("LONGITUDE", LONGITUDE); 
       Log.d(TAG, "@@@ params:" + params + " URL:" + Server_url); 
       return params; 
      } 
     }; 

     RequestQueue requestQueue = Volley.newRequestQueue(sens.this); 
     requestQueue.add(stringRequest); 
    } 
Verwandte Themen