¿Cuándo se llama onRestoreInstanceState?

Lo siento por mi incomprensión, pero soy nuevo en el desarrollo de Android.

Tengo una aplicación con la actividad A y la actividad B en ella, y paso de la actividad A a la actividad B. Cuando dejé la actividad A,onSaveInstanceState Se llamó al método, pero cuando volví a la actividad A (de la actividad B en la misma aplicación), el paquete en elonCreate El método era nulo.

¿Qué puedo hacer para guardar el estado anterior de la actividad A? Solo quiero almacenar los datos para el tiempo de vida de la aplicación.

¿Puede alguien ayudarme con esto?

Aquí está mi código para la Actividad A:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    if (savedInstanceState != null)
    {
        Log.v("Main", savedInstanceState.getString("test"));
    }
    else
    {
        Log.v("Main", "old instance");
    }
}  

@Override
public void onSaveInstanceState(Bundle savedInstanceState) 
{
    Log.v("Main", "save instance");

    savedInstanceState.putString("test", "my test string");

    super.onSaveInstanceState(savedInstanceState);
}


public void buttonClick(View view)
{
    Intent intent = new Intent(this, Activity2.class);
    startActivity(intent);
}

Aquí está mi código para la Actividad B, cuando presiono un botón para volver a la actividad A:

public void onBack(View view)
{
    NavUtils.navigateUpFromSameTask(this);
}

Respuestas a la pregunta(5)

Su respuesta a la pregunta