Никогда не связывайтесь с кодом, иначе вам будет сложно правильно обрабатывать вещи.
Так что просто создайте другой класс и используйте его в своей деятельности.
Посмотрите на этот классЯ написал, вы можете использовать его где угодно и для любого типа запроса данных.
public class SendData {
private Context context;
private String url;
private HashMap<String, String> data;
private OnDataSent onDataSent;
public void setOnDataSent(OnDataSent onDataSent) {
this.onDataSent = onDataSent;
}
public SendData(Context context, String url, HashMap<String, String> data) {
this.context = context;
this.url = url;
this.data = data;
}
public void send(){
StringRequest stringRequest = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
if(onDataSent != null){
onDataSent.onSuccess(response);
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
if(onDataSent != null){
onDataSent.onFailed(error.toString());
}
}
}){
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> map = new HashMap<>();
map.putAll(data);
return map;
}
};
stringRequest.setRetryPolicy(new DefaultRetryPolicy(0, 0, 0));
RequestQueue requestQueue = Volley.newRequestQueue(context);
requestQueue.add(stringRequest);
}
public interface OnDataSent{
void onSuccess(String response);
void onFailed(String error);
}
}
, и теперь вы можете легко использовать его из любой деятельности.Просто дайте данные в конструкторе и используйте интерфейс для отслеживания событий таким образом
HashMap<String, String> data = new HashMap<>();
data.put("username", "");//define the value
data.put("password", "");//define the value
data.put("is_admin", "");//define the value
SendData sendData = new SendData(this, "", data); //defie the context and url properly
sendData.setOnDataSent(new SendData.OnDataSent() {
@Override
public void onSuccess(String response) {
//parse the response
}
@Override
public void onFailed(String error) {
//something went wrong check the error
}
});
sendData.send();
надеюсь, что это поможет
счастливое кодирование
, если возникнет какая-то проблема, позвольте мне знать :)