Cómo borrar todas las actividades de la pila en API 8?

Estoy desarrollando una aplicación en la que estoy siguiendo una jerarquía, hay una opción desde la que el usuario puede iniciar sesión, después de esto estoy terminando la actividad de inicio de sesión. Ahora, una vez que el usuario se registra, lo estoy llevando a una nueva Actividad, suponga "Actividad A". A partir de esta actividad de nuevo se está iniciando una nueva Actividad llamada "Actividad B" sin finalizar la "Actividad A". Y finalmente hay una última Actividad llamada "Actividad C" que se inicia desde "Actividad B" sin terminar "Actividad B". Así que actualmente todas las tres actividades son pila.

Ahora, Cada pantalla o Actividad tiene una opción denominada Cerrar sesión, Si el usuario está en "Actividad A", acabo de terminar la Actividad y la Actividad de inicio de sesión. Para este escenario está funcionando bien, pero una vez que estoy cambiando a "Actividad B" o Actividad C "y luego si el usuario pulsa Desconectar lo que debo hacer para eliminar todas las actividades en la pila y también tengo que abrir la actividad de inicio de sesión como he hecho terminado mientras que con éxito la conexión.

Sé que hay una BANDERA en API 11 mediante el cual podemos borrar todas las actividades en la pila: –

Intent i = new Intent(mContext, LoginGateway.class); // set the new task and clear flags i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK) startActivity(i); 

Pero lo estoy soportando desde API 8. Quiero una solución que pueda utilizar para API 8 en adelante, por favor, ayúdame a averiguarlo. Cualquier ayuda sería apreciable. Gracias.

4 Solutions collect form web for “Cómo borrar todas las actividades de la pila en API 8?”

 Intent intent = new Intent(activity, LoginGateway.class); ComponentName cn = intent.getComponent(); Intent mainIntent = IntentCompat.makeRestartActivityTask(cn); activity.startActivity(mainIntent); 

prueba esta variante

 Intent i = new Intent(mContext, LoginGateway.class); i.addFlag(Intent.FLAG_ACTIVITY_NO_HISTORY | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); startActivity(i); 

Parece que quieres FLAG_ACTIVITY_CLEAR_TOP . Está disponible desde la API 1.

Prueba esto funciona bien conmigo

 // clear whole activity stack Intent intent = new Intent("clearStackActivity"); intent.setType("text/plain"); sendBroadcast(intent); // start your new activity Intent intent = new Intent(OrderComplete.this, MainActivity.class); startActivity(intent); 

Paso 1

Ponga estas líneas en el método onCreate () de todas las actividades o si tiene alguna actividad de base que puede poner allí, entonces no hay necesidad de poner en todas las actividades.

 private KillReceiver clearActivityStack; clearActivityStack = new KillReceiver(); registerReceiver(clearActivityStack, IntentFilter.create("clearStackActivity", "text/plain")); 

Paso 2

Ponga esta clase en su actividad Base

 private final class KillReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { finish(); } } 

Explicación:

En el código anterior creamos nuestro receptor de difusión personalizado. Y lo estamos registrando en la actividad base, es decir, en toda actividad que invoca.

Cuando queremos terminar todas las actividades que acaba de difusión intención, por lo que toda la actividad que se registran este receptor se notificará y terminar ellos mismos.

  • Intent.getExtras () devuelve siempre null
  • Cómo administrar backstack de android
  • ¿ActividadNotFoundException?
  • Problema de imagen borrosa en vista de imagen
  • Cómo llamar a la calculadora de Android en mi aplicación para todos los teléfonos
  • Compruebe si los extras están ajustados o no
  • Android: reanudar la aplicación desde la posición anterior
  • Apertura del cliente de correo electrónico a través de Intent (pero no para enviar un mensaje)
  • Abre la actividad de correo electrónico y obtén resultados?
  • ¿Cómo saber si la imagen es paisaje o retrato?
  • Iniciar y detener la grabación desde un botón en una notificación
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.