Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 布尔检查的值在“0”处为空;退票;_Php_Android_Boolean_Localhost_Android Volley - Fatal编程技术网

Php 布尔检查的值在“0”处为空;退票;

Php 布尔检查的值在“0”处为空;退票;,php,android,boolean,localhost,android-volley,Php,Android,Boolean,Localhost,Android Volley,我在本地主机中使用volley连接,并且在本地主机中有一个php文件。下面是我的类截击连接登录,我还有一个截击单例类(没有错误) 公共类截击连接登录{ 语境; 公共截击连接登录(上下文){ this.context=上下文; } 静态布尔检查; 公共布尔截击连接(最终字符串用户名、最终字符串密码){ String tag_String_req=“String_req”; 字符串url=”http://192.168.10.8/login/forlogin.php"; StringRequest

我在本地主机中使用volley连接,并且在本地主机中有一个php文件。下面是我的类截击连接登录,我还有一个截击单例类(没有错误)

公共类截击连接登录{
语境;
公共截击连接登录(上下文){
this.context=上下文;
}
静态布尔检查;
公共布尔截击连接(最终字符串用户名、最终字符串密码){
String tag_String_req=“String_req”;
字符串url=”http://192.168.10.8/login/forlogin.php";
StringRequest StringRequest=新StringRequest(Request.Method.POST,
网址,
新的Response.Listener(){
@凌驾
公共void onResponse(字符串响应){
Log.d(TAG,response.toString());
if(response.toString().equals(“successful”)){
检查=正确;
}否则{
检查=错误;
}
}
},new Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
检查=错误;
d(标记“Error:+Error.getMessage());
}
}) {
@凌驾
受保护的映射getParams(){
Map params=新的HashMap();
参数put(“uname”,用户名);
参数put(“pword”,密码);
返回参数;
}
};
getInstance(上下文).addToRequestQueue(stringRequest);
退货检查;
}
}

检查
为空,因为请求是异步的,所以当调用以下行时

VolleySingleton.getInstance(context).addToRequestQueue(stringRequest);
然后程序进入下一行,即

return check; // (which is still null) 
而后台的另一个线程开始处理该请求


您可以更改或修改代码,以便根据此方法的返回,在
Response.Listener
回调中的
onResponse()
块中执行任何操作。

由于您在接收响应的线程外返回布尔值,因此此方法

 Log.d(TAG, response.toString());
                        if(response.toString().equals("successful")){
                            check = true;
                        }else{
                            check = false;
                        }
                    }

控制转到
返回检查在响应返回之前

check
变量始终为false,因为您正在
onResponse
方法(回调方法)中设置
check
变量的值布尔型
类型的默认值为
null
 Log.d(TAG, response.toString());
                        if(response.toString().equals("successful")){
                            check = true;
                        }else{
                            check = false;
                        }
                    }