Intención con viejo extra en onCreate () para actividad SingleTask

Por ejemplo, creé un proyecto con 2 actividades: FirstActivity con android: launchMode = "singleTask" flag y SecondActivity.

Al principio, el usuario inicia FirstActivity y después de esta SecondActivity comenzará al hacer clic en el botón. Desde SecondActivity creamos notificaciones de la barra de estado.

Intent intent = new Intent(SecondActivity.this, FirstActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra(FirstActivity.ARG, true);

NotificationCompat.Builder builder = new      NotificationCompat.Builder(SecondActivity.this);
builder.setSmallIcon(R.drawable.ic_launcher)
   .setAutoCancel(true)
   .setContentTitle("title")
   .setContentText("message");

PendingIntent notifyIntent = PendingIntent.getActivity(SecondActivity.this, 0,     intent,PendingIntent.FLAG_CANCEL_CURRENT);
builder.setContentIntent(notifyIntent);

NotificationManager notificationManager = (NotificationManager)   getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(1000, builder.build());

Cuando hice clic en esta notificación y mi aplicación se está ejecutando ahora, se ejecutará el método FirstActivity # onNewIntent y la intención contiene ARG extra = true. Está bien la situación.

Cuando hice clic en esta notificación y mi aplicación NO se está ejecutando ahora, el método FirstActivity # onNewIntent NO se ejecutará, pero en lugar de este FirstActivity # onCreate () se ejecutará y puedo obtener mi indicador ARG comogetIntent().getBooleanExtra(ARG, false) Esta intención contiene ARG extra = true. Es la situación correcta también.

Pero cuando intento salir de mi aplicación después de la Situación 2 presionando el botón Atrás y ejecutar la aplicación nuevamente, recibí en FirstActivity # onCreate () la intención con ARG = verdadero (antiguo valor adicional que manejé). ¿Por qué mi bandera es "verdadera" después de volver a abrir la aplicación?

Respuestas a la pregunta(1)

Su respuesta a la pregunta