Al crear una aplicación de Android en la que primero creé la actividad principal, luego agregué la actividad de bienvenida junto con la actividad normal.

Entonces, mi problema es cuando hago clic en salir en mi aplicación cierra la actividad principal y regresa que una actividad normal en la actividad de bienvenida. Estoy usando finish(); en el botón de salida que está presente en la actividad principal.

Entonces, ¿cómo puedo salir de la aplicación que viene a la pantalla del iniciador de Android

También he intentado crear nueva intención con Acción principal pero solo minimiza la aplicación . Quiero cerrarla

MainActivity.class

if (id == R.id.exit) {
            AlertDialog.Builder builder = new AlertDialog.Builder(homeActivity.this);
            builder.setMessage("Do You Want To Exit?").setCancelable(false)
                    .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            finish();
                        }
                    }).setNegativeButton("No", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    dialog.cancel();
                }
            });
            AlertDialog alert = builder.create();
            alert.setIcon(R.drawable.ic_error_outline_black_24dp);
            alert.setTitle("Exit!!");
            alert.show();
      }
0
Nilesh Indalkar 6 ene. 2017 a las 11:12

4 respuestas

La mejor respuesta

Al iniciar el MainAcitivity desde SplashActivity, configure las banderas con la intención que se muestra a continuación y llame a finish() en SplashAcitivty

Intent intent = new Intent(context, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
finish();
1
arjun 6 ene. 2017 a las 09:04

Intente agregar la bandera "Intent.FLAG_ACTIVITY_CLEAR_TOP" mientras inicia MainActivity desde su SplashScreenActivity, como se muestra a continuación:

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
0
W4R10CK 6 ene. 2017 a las 09:08

Puedes configurar android:excludeFromRecents="true" y android:noHistory="true" en su archivo de Android Manifest para la actividad de presentación.

1
W4R10CK 6 ene. 2017 a las 08:21

Agregue estas cosas en splash mientras navega splash a mainActivity

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
finish();
0
faiyaz meghreji 6 ene. 2017 a las 09:33