Android: abre de forma programática el cuadro de diálogo "Aplicaciones recientes"

Me gustaría poder abrir el diálogo "Aplicaciones recientes" de mi aplicación. Este es el diálogo que se abre al presionar el botón de inicio. Estoy programando para Android 4.1 o versiones anteriores. Encontré una manera de hacerlo implementando AccessibilityService personalizado y llamando a AccessibilityService.performGlobalAction (GLOBAL_ACTION_RECENTS), pero esto requiere habilitar la accesibilidad en el teléfono, lo que no es muy deseable. ¿Hay alguna otra forma de abrir este diálogo desde una aplicación?

¡Gracias por la ayuda!

3 Solutions collect form web for “Android: abre de forma programática el cuadro de diálogo "Aplicaciones recientes"”

No puedes acceder a eso. Sin embargo, no es muy difícil rodar los suyos. El método getRecentTasks () devuelve una lista de aplicaciones ejecutadas recientemente. Simplemente tome la lista y añada su propia interfaz de usuario.

Una ventaja de esto es que el predeterminado, por lo menos en las versiones anteriores de Android, sólo muestra alrededor de 8 aplicaciones. Si usted lanza su propio puede mostrar tantos como usted desea.

Lo siento, pero es posible activar la actividad de las aplicaciones recientes.

El StatusBarManagerService implementa un método público que puede utilizar a través de la reflexión.

Puede utilizar el código siguiente:

 Class serviceManagerClass = Class.forName("android.os.ServiceManager"); Method getService = serviceManagerClass.getMethod("getService", String.class); IBinder retbinder = (IBinder) getService.invoke(serviceManagerClass, "statusbar"); Class statusBarClass = Class.forName(retbinder.getInterfaceDescriptor()); Object statusBarObject = statusBarClass.getClasses()[0].getMethod("asInterface", IBinder.class).invoke(null, new Object[] { retbinder }); Method clearAll = statusBarClass.getMethod("toggleRecentApps"); clearAll.setAccessible(true); clearAll.invoke(statusBarObject); 

Que te diviertas 🙂

Esto se puede hacer usando la intención TOGGLE_RECENTS.

 Intent intent = new Intent ("com.android.systemui.recent.action.TOGGLE_RECENTS"); intent.setComponent (new ComponentName ("com.android.systemui", "com.android.systemui.recent.RecentsActivity")); startActivity (intent); 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.