title: FragmentActivity onSaveInstanceState not getting called
body: <p>I have seen a few similar questions about <code>onSaveInstanceState</code> not getting called for <code>Fragment</code>s, but in my case <code>Fragment</code>s work fine, it's the main <code>FragmentActivity</code> that's having trouble. </p>
  
  <p>The relevant code looks fairly simple:</p>
  
  <pre><code>public class MyFActivity extends FragmentActivity implements ActionBar.TabListener { 
      String[] allValues; // data to save
  
      @Override
      protected void onSaveInstanceState (Bundle outState) {
          Log.d("putting it!", allValues.toString());
          outState.putStringArray("allValues", allValues);
          super.onSaveInstanceState(outState);
      }
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          if (savedInstanceState != null) {
              allValues = savedInstanceState.getStringArray("allValues");
              Log.d("getting it!", allValues.toString());
          }
      }
  }
  </code></pre>
  
  <p>When pausing the activity (using the back button), the <code>onSaveInstanceState</code> is never called, and consequently, <code>savedInstanceState</code> is always <code>null</code> within the <code>onCreate</code> method upon resuming the app. I tried adding a block like this:</p>
  
  <pre><code>@Override
  public void onPause() {
      super.onPause();
      onSaveInstanceState(new Bundle());      
  }
  </code></pre>
  
  <p>which was suggested in <a href="https://stackoverflow.com/a/14195202/362657">https://stackoverflow.com/a/14195202/362657</a> but while <code>onSaveInstanceState</code> then gets called, <code>savedInstanceState</code> remains <code>null</code> within <code>onCreate</code> method. What am I missing?</p>