关于关闭或退出apk的问题

时间:2010-12-19 15:03:10

标签: android

如何关闭apk或换句话说退出APK。我已经尝试完成,但它只是关闭当前活动,我需要关闭apk ??

中的所有活动

2 个答案:

答案 0 :(得分:2)

应用程序只是松散的活动联盟,而且Android中没有“退出应用程序”的概念。如果你想做一些模拟退出的事情,你必须手动跟踪哪些活动仍然存在,并且finish()列表中的每个活动。

最好在没有“退出”概念的情况下设计应用程序,并让系统根据需要销毁其部件。这符合Android的一个设计原则,即用户可能希望返回他离开的应用程序,而不会出现全面重启的延迟。如果您的活动中有些事情需要缩小,请利用活动生命周期并使用适当的onXXX()方法执行这些操作。

答案 1 :(得分:0)

这被问过很多次,但我现在找不到链接。和我之前做的答案相同:

短: 你不应该。 阅读Reto Meier关于该主题的观点:When to Include an Exit Button in Android Apps (Hint: Never)

长:

protected Dialog onCreateDialog(int id) {
        Dialog dialog = null;

        switch (id) {
        case MENU_QUIT:
            AlertDialog.Builder builder = new AlertDialog.Builder(this);
            builder.setMessage(getString(R.string.main_screen_quit_text))
                    .setCancelable(false)
                    .setPositiveButton(
                            getString(R.string.main_screen_quit_yes),
                            new DialogInterface.OnClickListener() {
                                public void onClick(DialogInterface dialog,
                                        int id) {

                                    moveTaskToBack(true);
                                }
                            })
                    .setNegativeButton(getString(R.string.main_screen_quit_no),
                            new DialogInterface.OnClickListener() {
                                public void onClick(DialogInterface dialog,
                                        int id) {
                                    dialog.cancel();
                                }
                            });
            AlertDialog alert = builder.create();
            return alert;
        default:
            dialog = null;
        }
        return dialog;
    }