大家好,有人可以帮我上课吗?我收到一个错误,我只是Android工作室和移动开发的新手。我正在学习和获取知识的过程中。请帮我。
RequestQueue requestQueue = Volley.newRequestQueue(this);
StringRequest stringRequest = new StringRequest(Request.Method.POST, URL, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Toast.makeText(Register.this, response, Toast.LENGTH_LONG).show();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(Register.this, error.toString(), Toast.LENGTH_LONG).show();
}
}) {
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<String, String>();
params.put(NAME, pangaran);
params.put(SURNAME, apelyido);
params.put(ADDRESS, lugar);
params.put(CONTACTNO, kontak);
params.put(USERNAME, username1);
params.put(PASSWORD, password1);
return params;
}
};
requestQueue.add(stringRequest);
答案 0 :(得分:2)
可能是你可以增加超时来检查一切的好工作。由于您之前说过您的代码适合您,可能的原因可能是您的服务器花了较少的时间来回复您的请求,由于流量的原因,这些请求可能不一致。 尝试在现有代码中添加以下行。
stringRequest.setRetryPolicy(new RetryPolicy() {
@Override
public int getCurrentTimeout() {
return 30000;
}
@Override
public int getCurrentRetryCount() {
return 30000;
}
@Override
public void retry(VolleyError error) throws VolleyError {
}
});
答案 1 :(得分:0)
请参阅此link,希望它能帮助您设置截击时间。
如果它没有帮助,请告诉我。
最后我插入了代码以更改由volley设置的默认时间,您可以自己设置时间,它应该以毫秒为单位。
RequestQueue requestQueue = Volley.newRequestQueue(this);
StringRequest stringRequest = new StringRequest(Request.Method.POST, URL, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Toast.makeText(Register.this, response, Toast.LENGTH_LONG).show();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(Register.this, error.toString(), Toast.LENGTH_LONG).show();
}
}) {
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<String, String>();
params.put(NAME, pangaran);
params.put(SURNAME, apelyido);
params.put(ADDRESS, lugar);
params.put(CONTACTNO, kontak);
params.put(USERNAME, username1);
params.put(PASSWORD, password1);
return params;
}
};
//10000 is the time in milliseconds adn is equal to 10 sec
stringRequest.setRetryPolicy(new DefaultRetryPolicy(
10000,
DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
requestQueue.add(stringRequest);
答案 2 :(得分:0)
对于我:仅对您的“ VPN”而言,请关闭“ VPN”