【问题标题】:how to close application when multiple activities are alive当多个活动处于活动状态时如何关闭应用程序
【发布时间】:2011-09-19 05:52:08
【问题描述】:

我打开了 3 个活动。现在用户想要退出应用程序。为此,我必须完成所有活动。不建议这样做,但我的应用程序希望为用户提供这样的退出点。如何在多个活动处于活动状态时关闭应用程序

谢谢

【问题讨论】:

    标签: android


    【解决方案1】:

    任何应用程序的所有活动都在 android 中使用相同的进程 ID。这意味着只有一个活动保持在顶部,并且该活动共享由其他活动创建的相同进程。所以杀死一个进程ID与活动的finish()相同。 如果您从活动 A 调用了活动 B。当活动 B 被杀死时,您的控制权将转到活动 A 的 onResume() 方法。 你可以使用这种行为。

    让您创建一个单击按钮,您将退出应用程序。为了达成这个。单击该方法时设置一个静态布尔值。并完成活动。

    MyConstant.isApplicationTerminated = true;
    finish();
    

    现在在每个扩展 Activity 的类中覆盖 onResume() 如下

        @Override
        protected void onResume() {
            // TODO Auto-generated method stub
    if(MyConstant.isApplicationTerminated){
            finish();
    }
            super.onResume();
        }
    

    这样你就可以退出应用了

    谢谢 迪帕克

    【讨论】:

      【解决方案2】:

      当用户想要退出启动另一个活动并在super.onCreate(); 之后添加finish(); 并在启动活动时为意图设置标志为

      FLAG_ACTIVITY_CLEAR_TOP
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-11-14
        • 2021-09-13
        • 1970-01-01
        • 2011-06-11
        • 2015-03-20
        • 2011-09-13
        • 1970-01-01
        相关资源
        最近更新 更多