Я недавно начал работу на платформе разработки Android. Я использую Android Studio и использую библиотеку Volley для работы в сети. Я реализовал бэкэнд для push-уведомления для iOS, и он работает очень хорошо, и теперь я запускаю этот php через работу сети Volley следующим образом.Volley Request URL URL несколько раз
По некоторым причинам он вызывает этот URL несколько раз (5 или 6 раз), откуда я знаю? потому что устройство iOS получает несколько уведомлений. Я не знаю, почему это происходит и как я могу это решить?
public void onClick(View v) {
if(v == buttonBuy) {
message = (EditText) findViewById(R.id.offerText);
buy();
}
}
private void buy()
{
StringRequest postRequest = new StringRequest(Request.Method.POST, Config.ASK_URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
} catch (Exception e) {
e.printStackTrace();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
error.printStackTrace();
}
}
) {
@Override
protected Map<String, String> getParams()
{
Map<String, String> params = new HashMap<>();
params.put("token",token);
params.put("pname",objee.optString("pname"));
params.put("toid",objee.optString("uid"));
params.put("pid",pid);
params.put("message",message.getText().toString().trim());
return params;
}
};
CustomVolleyRequest.getInstance(this).getRequestQueue().add(postRequest);
}
данного кода не будет вызывать больше, чем 1 раз. Возможно, вы вызываете метод 'buy()' или по вашей логике метод 'buy()' называется 5-6 раз – Pankaj
Конечно, я нажимаю 'buyButton' только один раз. Я добавил остальную часть кода, где я называю метод 'buy()'. – hotspring
Добавьте несколько операторов журнала в метод покупки и код, вызывающий его, чтобы узнать, что происходит. – Henry