Control de la pila de actividad de Android. No puedo entender cómo eliminar el historial

Tengo las siguientes 2 actividades (además de muchas más que no son importantes para esta pregunta):

<activity android:name=".activities.HomeActivity" android:excludeFromRecents="true" />
<activity android:name=".activities.AdHocActivity" android:noHistory="true"/>  

HomeActivityes el primero y el único para el que mantengo la historia. El usuario puede ir a diferentes lugares desde Inicio y hacer clic en Atrás para volver a HomeActivity principal.

También tengo servicio de alarma y comprobando algunas cosas específicas. Cuando se cumplen criterios específicos, estoy mostrando miAdHocActivity

Intent i = new Intent(context, AdHocActivity.class);
                i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                i.putExtra(BlockingActivity.INTENT_BLOCKED_PACKAGE_NAME, packageName);
                context.startActivity(i);

FLAG_ACTIVITY_NEW_TASK era necesario mostrar Actividad de BroadcastReceiver

Ahora, esta actividad AdHoc muestra algún mensaje al usuario y tiene un botón para llevar al usuario de regreso aHomeActivity

private void sendToMainApplication()
    {
        Intent i = new Intent(this, HomeActivity.class);
        startActivity(i);
        finish();
    }

Todo este trabajo, pero obtengo una segunda instancia HomeActivityen una pila. Entonces, cuando el usuario toca "Atrás", mi actividad de Inicio parpadea y vuelve (copia anterior).

Solo quiero una copia para estar en la cima. Quiero que sea como el ancla uno. Si no existe, quiero que se abra uno nuevo.

Respuesta 1

He creado un juego Java (applet) y lo he puesto en un sitio web de prueba. No puedo mostrar todo el código aquí porque es demasiado grande, pero el juego se ejecuta a 20 cuadros / segundo mientras duerme en el bucle principal durante 50 ...

Me gustaría saber si las dos variantes de los ejemplos de código a continuación técnicamente tienen la misma complejidad en tiempo de ejecución. Por ejemplo (y en aras de hacer un punto, digamos que la longitud de la cadena es un ...

Tengo una aplicación Groovy que utiliza un panel de desplazamiento creado a través del generador de cambios: BinsicWindow (controlador de def) {controlObject = controller swinger = new SwingBuilder () mainFrame = swinger.frame (...

Cuando GSON deserializa un campo en una clase que tiene el tipo java.util.List, parece favorecer a ArrayList como la implementación de la lista a usar. ¿Hay alguna forma de predeterminarlo para usar LinkedList (que no sea ...