title: onDestroy() gets called when the back button is pressed
body: <p>In my Activity, I have overrode <code>onDestory()</code> and just put a log call to show if this method is being called. (tested on Android 4.2.2 and 4.4.4)</p>
  
  <pre><code>@Override
  protected void onDestroy() {
      Log.i(TAG, "onDestroy() was called");
      super.onDestroy();
  }
  </code></pre>
  
  <p>When I press the back button, this method gets called (I saw the log).</p>
  
  <p>I believe this should not happen unless phone gets low in memory or something. I have nothing much in the app but the MainActivity and some fragments.</p>
  
  <p>Here is the log when the user is in the MainActivity and presses the back button:</p>
  
  <pre><code>I/MainActivity? onBackPressed() was called
  I/MainActivity? onStop() was called
  I/MainActivity? onDestroy() was called
  </code></pre>
  
  <p>Why this happens?</p>
  
  <p>I also checked for <code>isFinishing()</code> in the <code>onPause()</code> and it always returns <code>true</code></p>
  
  <p>From the Javadoc :</p>
  
  <blockquote>
    <p>Perform any final cleanup before an activity is destroyed. <strong>This can
    happen</strong> either because the activity is finishing (someone called finish
    on it, or because the system is temporarily destroying this instance
    of the activity to save space. You can distinguish between these two
    scenarios with the isFinishing method. Note: do not count on this
    method being called as a place for saving data!</p>
  </blockquote>