退出Android应用程序
我有一个android应用程序,我在第一个屏幕上从远程服务器检查用户凭证。我有10秒的超时时间。超时后,应用程序将用户发送到错误页面。我有一个退出按钮 我尝试过写下退出应用程序的所有逻辑,包括退出Android应用程序,android,Android,我有一个android应用程序,我在第一个屏幕上从远程服务器检查用户凭证。我有10秒的超时时间。超时后,应用程序将用户发送到错误页面。我有一个退出按钮 我尝试过写下退出应用程序的所有逻辑,包括 android.os.Process.killProcess(android.os.Process.myPid()); 点击退出按钮。但我无法从应用程序中删除ext 请帮助我找到退出应用程序的方法 CLASSNAME.this.finish(); 其中CLASSNAME是活动活动的类的名称。在类类名
android.os.Process.killProcess(android.os.Process.myPid());
点击退出按钮。但我无法从应用程序中删除ext
请帮助我找到退出应用程序的方法
CLASSNAME.this.finish();
其中CLASSNAME是活动活动的类的名称。在类类名中使用此选项。完成()将用户发送到错误页时的活动,并在退出时按完成()该活动….如果当前活动不是堆栈中的唯一活动,则仅
finish()
不会退出应用程序。您应该递归地finish()
堆栈中的所有活动以退出应用程序。为什么用户仅仅因为输入了错误的凭据/没有正确的凭据就想退出应用程序
/ add this line for Removing Force Close
@Override
protected void onDestroy() {
// closing Entire Application
android.os.Process.killProcess(android.os.Process.myPid());
super.onDestroy();
}
}
如果我是你,错误视图/活动/“页面”将为用户带来的任何问题提供建设性的解决方案。对于用户来说,简单地说“错误”然后退出应用程序实际上没有任何好处
至于你的问题,谷歌不鼓励使用退出按钮。Android会在你认为合适的时候“退出”你的应用程序,当这种情况发生时,由开发者来实施正确的行为
不要尝试退出应用程序,因为android的设计目的不是让应用程序工作
相反,如果您想锁定用户(可能是为了强制重新身份验证),请销毁维护会话的任何信息,即在用户重新身份验证之前拒绝执行任何操作。通过这种方式,您可以使用诸如凭证数据或状态变量之类的东西来控制应用程序的行为,而不是android在某种程度上从开发人员的控制中删除的东西(进程死亡)。调用主活动的完成。像
MainActivity.this.finish()
如何完成当前的活动?我认为在android中“退出”应用程序是不正确的。不要使用android.os.Process.killProcess
。按照Pim的回答使用finish()
。我已经想到了你的方法。但实际上,我正在为http连接使用一个util类,为此,我使用上下文对象将用户发送到错误页面。是否有任何方法可以从调用此util方法的位置完成活动。我尝试将活动对象传递给util类,并在调用错误页时完成相同的操作。但它没有点击。有什么想法吗?然后你应该把finish()放在活动的onResume中,当你关闭错误页面时,会调用活动的onResume,在那里你可以调用finish()…你需要为此维护一个变量…我会通过一个对话框来解释为什么你会在按钮onclick回调中退出,这样用户就知道发生了什么。