退出Android应用程序

时间:2015-04-03 08:56:03

标签: android

我的应用程序包含12个活动。我可以一键退出整个应用程序吗? finish()只完成一个活动,并启动上一个活动。请帮我解决这个问题

3 个答案:

答案 0 :(得分:0)

启动要关闭所有活动的活动时,请为意图添加标记。

  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);

这将使您当前的活动成为最高层,因此当您完成此任务时,您的任务将完成

答案 1 :(得分:0)

创建所有活动的静态实例

public class Activity1 extends FragmentActivity {

    private static Activity1 sActivity;

    public static Activity1 getsActivity() {
        return sActivity;
    }
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        sActivity = this;

}

    @Override
    protected void onDestroy() {
        super.onDestroy();
        sActivity = null
    }
}
}

现在在您的Utility类中创建一个退出方法,然后从更高的顺序开始查杀活动,并从应用程序内的任何位置调用它

public static void exitApp(){
    if(Acitivity10.getsActivity() != null){
    Activity10.getsActivity.finish();   
}
    if(Acitivity9.getsActivity() != null){
    Activity9.getsActivity.finish();    
}
-
-
if(Acitvity1.getsActivity()!= null){
    Activty1.getsActivity().finish();
}
}

答案 2 :(得分:-1)

        AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
                this);
        alertDialogBuilder.setTitle("Exit App?");
        alertDialogBuilder
                .setMessage("Click yes to exit!")
                .setCancelable(false)
                .setPositiveButton("No",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                dialog.cancel();
                            }
                        })

                .setNegativeButton("Yes",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                moveTaskToBack(true);
                                android.os.Process
                                        .killProcess(android.os.Process
                                                .myPid());
                                System.exit(0);

                            }
                        });