Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.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
Java 从服务器收到响应后继续_Java_Android Volley - Fatal编程技术网

Java 从服务器收到响应后继续

Java 从服务器收到响应后继续,java,android-volley,Java,Android Volley,我正在尝试为我的android应用程序实现一个登录功能,在那里我向服务器发送一封电子邮件和一个密码。在响应中,我得到了一些值,我需要这些值来继续应用程序 问题是我想在“requests类”中实现请求,如下所示: 公共类MyRequests{ public void loginToServer(字符串电子邮件、字符串密码、上下文上下文、可运行myRunnable){ RequestQueue=Volley.newRequestQueue(上下文); StringRequest=新StringReq

我正在尝试为我的android应用程序实现一个登录功能,在那里我向服务器发送一封电子邮件和一个密码。在响应中,我得到了一些值,我需要这些值来继续应用程序

问题是我想在“requests类”中实现请求,如下所示:

公共类MyRequests{
public void loginToServer(字符串电子邮件、字符串密码、上下文上下文、可运行myRunnable){
RequestQueue=Volley.newRequestQueue(上下文);
StringRequest=新StringRequest(
Request.Method.POST,
我的网址,
新的Response.Listener(){
@凌驾
公共void onResponse(字符串响应){
myRunnable.run();
}
},new Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
Toast t=Toast.makeText(上下文,“Error!”,Toast.LENGTH\u LONG);
t、 show();
}
}
);//这里还有一些post参数和身份验证
}
}
公共类mainActivity扩展了AppCompatiActivity{
Runnable myRunnable=新Runnable(){
@凌驾
公开募捐{
//继续新活动+做一些数据库工作
}
}
MyRequests.loginToServer(电子邮件、密码、this、myRunnable);
}
我不知道如何将参数传递回runnable,以便知道调用是否成功等

我可以在这里使用任何好的想法或好的实践吗


谢谢。

听起来有点太复杂了。为什么不能使用基本的httppost风格来发送和接收服务器请求(示例:),我认为您可能是对的。但是,接下来如何将响应发送回调用该方法的活动?我不能简单地让该方法返回字符串,因为请求必须在例如AsynchTask?中运行。在onPostExecute中,您可以对该活动创建回调方法,以便在执行结束时向其提供反馈,而不会打扰UIThread,直到完全需要它为止。要执行此操作,请检查下一个示例: