Salir de una aplicación de Android en el botón Atrás
Tengo una aplicación en la que tengo diferentes actividades. En 1 actividad, quiero que cuando el usuario presiona el botón Atrás, quiero que la aplicación se cierre y se muestre la pantalla de inicio
Código
public boolean onKeyDown(int keyCode, KeyEvent event)
{
//Handle the back button
if(keyCode == KeyEvent.KEYCODE_BACK)
{
//Ask the user if they want to quit
new AlertDialog.Builder(this)
.setIcon(android.R.drawable.ic_dialog_alert)
.setTitle("Exit")
.setMessage("Really Exit ?")
.setPositiveButton("Yes", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
})
.setNegativeButton("No", null)
.show();
return true;
}
else
{
return super.onKeyDown(keyCode, event);
}
}
Cuando ejecuto esto y presiono el botón Atrás, se muestra la pantalla de inicio, pero cuando la ejecuto por segunda vez, obtengo una salida de consola como
ActivityManager: Advertencia: Actividad no iniciada, su tarea actual se ha llevado al frente.
Y se muestra la actividad en la que se presiona el botón Atrás. Creo que la aplicación no muere y se ejecuta en segundo plano. Solo por mencionar, esta no es la actividad de inicio de mi aplicación.
Alguien me puede ayudar, soy principiante.