2012-03-12 25 views
5

En mi aplicación, tengo un botón llamado EXIT, cuando el usuario hace clic en eso, quiero finalizar todas las actividades de mi aplicación, que están en la pila, y ir a la actividad predeterminada o a todas las aplicaciones. .¿Cómo ir a la pantalla de inicio predeterminada de Android programáticamente?

he escrito el código siguiente en mi onClick():

Intent intent = new Intent(Intent.CATEGORY_HOME); 
startActivity(intent); 

pero me da el siguiente error en Logcat:

03-12 11:22:18.279: ERROR/AndroidRuntime(308): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.category.HOME } 

Entonces, ¿qué tengo que hacer para lograrlo? ¿Necesito alguna configuración en el manifiesto o mi enfoque es incorrecto?

+1

posible duplicado de [Ir a la pantalla de inicio de programación] (http://stackoverflow.com/questions/3724509/going-to-home-screen-programmatically) –

Respuesta

13

Prueba esto:

Intent homeIntent= new Intent(Intent.ACTION_MAIN); 
homeIntent.addCategory(Intent.CATEGORY_HOME); 
homeIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(homeIntent); 
+1

¿Está terminando todas las actividades de la tarea de pila? –

+1

No. Este código lo llevará a la pantalla de inicio. Acabo de darle el código para ir a la pantalla de inicio predeterminada. (Como veo en su registro, estaba arrojando una excepción). Para finalizar todas las actividades de su aplicación, tendrá que escribir la lógica que debería llamarse antes de este código. – AndroDev

+0

lo hará Intent.FLAg_ACTIVITY_CLEAR_TOP, ya que cada actividad se encuentra en la parte superior de la actividad del hogar. –

3

utilice el código siguiente para ejecutar la pantalla principal:

Intent intent=new Intent(this, HomeClass.class); 
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(intent); 
Cuestiones relacionadas