onClick关闭应用程序

时间:2014-11-25 07:52:48

标签: android

我有一个Android应用程序..我想要用户点击退出按钮,它会显示一条确认消息,如果他点击是,则关闭整个应用程序..

尝试了这段代码但没有用:

AlertDialog.Builder alertBuilder=new AlertDialog.Builder(AdminEditProfile.this);
alertBuilder.setTitle("Exit");
alertBuilder.setMessage("Are you sure you want to exit from the application?");
alertBuilder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {

    public void onClick(DialogInterface dialog, int which) {

        dialog.cancel();
        android.os.Process.killProcess(android.os.Process.myPid());
        System.exit(1);
    }
});
alertBuilder.setNegativeButton("No", new DialogInterface.OnClickListener() {

    public void onClick(DialogInterface dialog, int which) {

        dialog.cancel();    
    }
});
alertBuilder.create().show();

有没有办法做>

请帮助,谢谢:)。

4 个答案:

答案 0 :(得分:3)

你正在杀死你的进程,这是一个坏主意。 请看一下这篇文章,找出原因:

Why calling Process.killProcess(Process.myPid()) is a bad idea?

我建议你改用finish();

如果你想完成整个应用程序(取决于你需要什么)我建议你看看这篇文章:

How to close Android application?

答案 1 :(得分:2)

刚刚结束();可以做关闭活动的工作。是否有任何服务在后台运行?

答案 2 :(得分:1)

如果它是一个简单的应用程序,您可以调用finish()并关闭所有已打开的活动。 也许你应该从你的应用程序注销用户?

答案 3 :(得分:-1)

我的示例代码试试这个

    new AlertDialog.Builder(MainActivity.this)
      .setTitle("Application Informaiton")
       .setMessage("" )
       .setPositiveButton("Got it", new 
         DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) { 
         // continue with delete
        }
        })
      .setCancelable(false)
      .show();

        }
        else if(item.getTitle().equals("Stop this Application"))
        {
            new AlertDialog.Builder(MainActivity.this)
           .setTitle("Stop application?")
           .setMessage("Stop this application and exit? You'll need to
            re-launch the application to use it again.")
           .setPositiveButton("Don't stop", new 
            DialogInterface.OnClickListener() {
           public void onClick(DialogInterface dialog, int which) { 
            // continue with delete
            }
            })
            .setNegativeButton("Stop and exit", new 
              DialogInterface.OnClickListener() {
               public void onClick(DialogInterface dialog, int which) { 
                // continue with delete
                MainActivity.this.finish();
                Intent intent = new Intent(Intent.ACTION_MAIN);
                intent.addCategory(Intent.CATEGORY_HOME);
                intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                                    startActivity(intent);
                                }
                             })
                            .setCancelable(false)
                             .show();