Android: Limpiar la pila de actividades.
Un ejemplo de uso:
A – Menú principal con opciones (se pulsa botón y vamos a B)
B – Lista (se pulsa un elemento y vamos a C)
C – Detalle de elemento seleccionado de la lista (Se pulsa Editar y vamos a D)
D – Editando el elemento (Se pulsa Borrar y se lanza startActivity para volver a A)
Sin utilizar este flag, al pulsar atrás:
Iría de B a D, ejecutando las consultas de SQLite (o lo que fuera) sobre un elemento que ya no existe, provocando cierre.
Utilizando el flag, al pulsar atrás:
Iría de B a A, sin dar ningún problema y siguiendo la navegación lógica.
Intent intent = new Intent(context, classToBeStarted.class);
intent.setFlag(Intent.FLAG_ACTIVITY_CLEAR_TOP); // <- Aquí :)
startActivity(intent);
finish();
Más información sobre los Intents, y sobre FLAG_ACTIVITY_CLEAR_TOP.