Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.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_Json_Http Response Codes - Fatal编程技术网

Java 从无法扩展活动的包启动意图

Java 从无法扩展活动的包启动意图,java,android,json,http-response-codes,Java,Android,Json,Http Response Codes,我在处理http响应代码时遇到一些问题。问题是,应用程序崩溃是因为我没有指定要运行的特定函数。 在这种情况下,我想在Httresponsecode为401时将用户发送回登录屏幕,否则用户仍然可以使用该应用程序 在我当前的代码中,我有以下内容: 我想要的是在这里调用,以便在整个应用程序范围内调用此函数时,它将在每个屏幕上执行相同的操作 Intent i = new Intent(Register.class, Register.activity); startactivity(i); 但是,这是

我在处理http响应代码时遇到一些问题。问题是,应用程序崩溃是因为我没有指定要运行的特定函数。 在这种情况下,我想在Httresponsecode为401时将用户发送回登录屏幕,否则用户仍然可以使用该应用程序

在我当前的代码中,我有以下内容:

我想要的是在这里调用,以便在整个应用程序范围内调用此函数时,它将在每个屏幕上执行相同的操作

Intent i = new Intent(Register.class, Register.activity);
startactivity(i);
但是,这是不可能的,因为ResponseHandler无法扩展活动。如果我这样做,我会得到一个包含looper.prepare的堆栈跟踪错误,必须调用它


有谁能告诉我,我怎么才能在这里称之为新的意图。包含上述内容的类位于名为components的文件夹中,而my app activities则位于另一个文件夹中,以防给出正确答案。

您需要将当前活动或应用程序上下文作为参数传递给您

如果它在一个碎片里面,那么

getActivity().startActivity(getActivity(), newActivity.class);
如果它在类内,则:

context.startActivity(context, newActivity.class);
这应该是

Intent i = new Intent(CurrentClass.this, Activity.class);
startactivity(i);
如果你有碎片

Intent i = new Intent(getActivity(), Activity.class);
getActivity().startactivity(i);

您需要从调用此类的活动中传递活动上下文,然后在创建新意图时使用该上下文,即intent intent=new Intentcontext,Register.classe您错误地传递了上下文而不是活动类名称。使用了与所述相同的方法,现在它可以工作了。非常感谢你
Intent i = new Intent(CurrentClass.this, Activity.class);
startactivity(i);
Intent i = new Intent(getActivity(), Activity.class);
getActivity().startactivity(i);