tutorial studio que pueden programar programacion preinstaladas para necesito moviles eliminar desde desarrollo como cero borrar aplicaciones android

android - studio - Elimina la aplicación de aplicaciones recientes mediante programación



programar en android studio desde cero (7)

Sé que las Actividades se pueden declarar en manifiesto como excluidas de recientes con android:excludeFromRecents : http://developer.android.com/guide/topics/manifest/activity-element.html#exclude

Sin embargo, eso no es lo que estoy buscando, me gustaría saber si hay una forma de eliminar la aplicación de aplicaciones recientes mediante programación


A continuación está la definición de la bandera de android:excludeFromRecents (que sé que ya has visto):

Si la tarea iniciada por esta actividad debe o no excluirse de la lista de aplicaciones utilizadas recientemente ("aplicaciones recientes"). Es decir, cuando esta actividad es la actividad raíz de una nueva tarea, este atributo determina si la tarea no debería aparecer en la lista de aplicaciones recientes. "verdadero" si la tarea debe ser excluida de la lista; "falso" si se debe incluir. El valor predeterminado es "falso".

por lo tanto, para eliminar la aplicación de la lista de aplicaciones recientes, puede establecer esta marca en la primera actividad de la aplicación, ya que esa actividad inicia la tarea para su aplicación. Si tiene varias tareas (poco probable para la mayoría de las aplicaciones) en su aplicación, entonces necesita o establecer este indicador para la actividad raíz de toda la tarea.


Agregue estas líneas a la actividad desde la cual está saliendo de la aplicación:

@Override public void finish() { if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { super.finishAndRemoveTask(); } else { super.finish(); } }


Después de recibir las otras respuestas, logré llegar a la siguiente solución alternativa: Tengo una Activity , llamémosla XPTO, declarada en manifiesto con

y, básicamente, cuando quiero que la aplicación desaparezca de la lista actual, termino todas las demás actividades, luego comienzo el XPTO, que básicamente mata la aplicación (llamando a android.os.Process.killProcess(android.os.Process.myPid()); en su onResume()

Si alguien tiene una mejor manera de hacerlo, por favor compártelo


Esto se puede hacer utilizando la funcionalidad ActivityManager.AppTask (comenzando en API 21)

ActivityManager am = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE); if(am != null) { List<ActivityManager.AppTask> tasks = am.getAppTasks(); if (tasks != null && tasks.size() > 0) { tasks.get(0).setExcludeFromRecents(true); } }


Llámelo cuando su actividad esté completa y se cierre y la tarea se elimine por completo como parte de la finalización de la actividad raíz de la tarea.

finishAndRemoveTask();


Lo hice de la manera más fácil:

Agregar nueva actividad :

public class ExitActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if(android.os.Build.VERSION.SDK_INT >= 21) { finishAndRemoveTask(); } else { finish(); } } public static void exitApplicationAndRemoveFromRecent(Context context) { Intent intent = new Intent(context, ExitActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS | Intent.FLAG_ACTIVITY_NO_ANIMATION); context.startActivity(intent); } }

Ahora salga de otra actividad :

@Override public void onBackPressed() { ExitActivity.exitApplicationAndRemoveFromRecent(OtherActivity.this); super.onBackPressed(); }

Hecho


Sí, en general, cuando desea tener propiedades especiales para una Activity al iniciarla, proporciona banderas especiales para la Intent . En este caso, FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS .

Actualizado:

Si necesita ocultar la actividad actual que ya se está ejecutando, es posible que pueda usar esta bandera en combinación con FLAG_ACTIVITY_CLEAR_TOP, que enviaría la nueva intención a la actividad existente. Tendrás que pensar y tal vez experimentar con lo que sucede a medida que el usuario se mueve alrededor de tu pila y si eso hará que tu aplicación vuelva a aparecer en las aplicaciones recientes.