机器人杀死一个活动可能会阻止我强行关闭

时间:2012-03-27 23:41:51

标签: android android-activity

我的应用程序中出现错误状态,因此当用户没有启用互联网时查看xml以通知他应该先连接。问题是,当他启用互联网并尝试连接时,他可能会获得一个力量。我不知道为什么会这样,但我认为如果在我的错误状态屏幕中添加用于在退出时杀死活动的代码将帮助我解决这个问题。我的问题很简单。我需要他们两个吗?或者只是他们?添加其他东西?

@Override
        protected void onStop() {
            super.onStop();
            // The activity is no longer visible (it is now "stopped")
finish();
            System.exit(0);
        }
     @Override
        protected void onDestroy() {
            super.onDestroy();
            // The activity is about to be destroyed.
finish();
            System.exit(0);

        }

我的应用程序流程如下:用户进入应用程序,检查是否在线。如果是,请转到主屏幕,一切都按照计划进行。如果现在进入错误状态。因此,如果被调用,错误状态将是第一个运行的活动(在启动之后)。

编辑:我只是想通知用户没有连接,所以请再试一次,因为这会杀死所有正在运行的活动(这是唯一一个实际上就好像它运行它将是第一个)。因此,下次他进入应用程序时,从头开始,而不是从他早些时候开始。

3 个答案:

答案 0 :(得分:0)

这取决于。 OnStop和OnDestroy有两个不同的用途。你应该用try / catch来包围可能出错的东西以避免使用fc

@pseudo代码 尝试: 建立联系 抓住 用于警告没有连接的对话框 super.finish()

答案 1 :(得分:0)

永远不要使用

System.exit(0);

让主活动启动完毕,然后检查连接。如果有连接,一切都很好。如果没有,弹出一个AlertIialog,调用finish()onClick。

答案 2 :(得分:0)

没有互联网连接时,完成主要活动有什么问题吗?并且当主要活动完成后,重新启动后它将从头开始。

好好参考这个帖子:

How to close Android application?