【发布时间】:2017-03-15 06:25:09
【问题描述】:
我开发了一个 android 应用程序,它将传感器数据发送到灯服务器,以便在后台使用服务发送数据,并且我使用了 php。当我运行应用程序时,后台服务启动时,我从服务器获取数据成功插入消息,灯服务器行正在更新,但值未存储。正在存储空值,请帮我找出代码中的问题所在?
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);
}
【问题讨论】:
-
为什么返回 super.getParams();
-
即使我把return.params;我无法接受我尝试过的那种。你可以看到我评论了那行代码。
-
请先调试您的服务以确保您收到 null... 您的服务可能在插入数据时遇到问题。
标签: php android android-volley