Java 没有toast,JSON响应不起作用为什么?

Java 没有toast,JSON响应不起作用为什么?,java,android,json,android-volley,Java,Android,Json,Android Volley,我尝试了MYSQL、PHP JSON和VOlley请求来登录用户,但是当我不进行烤面包时,最终的响应是用户没有登录,而是当我使用烤面包时,用户登录了?为什么会这样 StringRequest stringRequest = new StringRequest(Request.Method.POST, URL_LOGIN, new Response.Listener<String>() {

我尝试了MYSQL、PHP JSON和VOlley请求来登录用户,但是当我不进行烤面包时,最终的响应是用户没有登录,而是当我使用烤面包时,用户登录了?为什么会这样

        StringRequest stringRequest = new StringRequest(Request.Method.POST,
            URL_LOGIN,
            new Response.Listener<String>() {
                @Override
                public void onResponse(String response) {

                    try {
                        JSONObject jsonObject = new JSONObject(response);

                        /////////////////////THIS TOAST I AM TALKING ABOUT

                        Toast.makeText(getApplicationContext(), jsonObject+"", Toast.LENGTH_LONG).show();


                        if (!jsonObject.getBoolean("error")) {
                                startActivity(new Intent(LoginActivity.this, MainActivity.class);
                        }
                        if(jsonObject.getBoolean("error")){
                            if(jsonObject.getString("message").equals("ERROR")){
                                startActivity(new Intent(LoginActivity.this, Verify.class);
                            }
                        }

                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                }
            },
            new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                }
            }) {
        @Override
        protected Map<String, String> getParams() throws AuthFailureError {
            Map<String, String> params = new HashMap<>();
            params.put("email", username);
            params.put("password", password);
            return params;
        }
    };

    stringRequest.setShouldCache(false);
    RequestHandler.getInstance(this).addToRequestQueue(stringRequest);
StringRequest StringRequest=新的StringRequest(Request.Method.POST,
URL\u登录,
新的Response.Listener(){
@凌驾
公共void onResponse(字符串响应){
试一试{
JSONObject JSONObject=新JSONObject(响应);
/////////////////////这是我说的吐司
Toast.makeText(getApplicationContext(),jsonObject+“”,Toast.LENGTH_LONG.show();
如果(!jsonObject.getBoolean(“错误”)){
startActivity(新意图(LoginActivity.this、MainActivity.class);
}
if(jsonObject.getBoolean(“错误”)){
if(jsonObject.getString(“消息”).equals(“错误”)){
startActivity(新意图(LoginActivity.this、Verify.class);
}
}
}捕获(JSONException e){
e、 printStackTrace();
}
}
},
新的Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
}
}) {
@凌驾
受保护的映射getParams()引发AuthFailureError{
Map params=新的HashMap();
参数put(“电子邮件”,用户名);
参数put(“密码”,密码);
返回参数;
}
};
stringRequest.setShouldCache(false);
RequestHandler.getInstance(this).addToRequestQueue(stringRequest);

我认为toast会创建一个延迟时间,这样您就有足够的时间进行初始化。我建议在代码的下一部分使用布尔方法,并使用“if”语句检查是否正确返回。或者使用顺序调用方法Way class.method1().method2()。以这种方式,method2在method1返回结果之前不会执行。我也遇到了同样的问题,您能在此场景中详细说明一下吗