Check for target SDK version for out-of-order fragment creation.

Bug 30230667

Ensure that pre-N applications initialize in the proper order,
but allow N and above applications to be created prior to
asking for a Transition.

Change-Id: I859f22a7c5518e4b496cbd7ee58ef1d3206a5c86
(cherry picked from commit 78d38fc8390b9d648f88687efb333e054146865d)
diff --git a/core/java/android/app/BackStackRecord.java b/core/java/android/app/BackStackRecord.java
index 1e2cc26..a8d332b 100644
--- a/core/java/android/app/BackStackRecord.java
+++ b/core/java/android/app/BackStackRecord.java
@@ -17,6 +17,7 @@
 package android.app;
 
 import android.graphics.Rect;
+import android.os.Build;
 import android.os.Parcel;
 import android.os.Parcelable;
 import android.text.TextUtils;
@@ -852,7 +853,9 @@
              * Ensure that fragments that are entering are at least at the CREATED state
              * so that they may load Transitions using TransitionInflater.
              */
-            if (fragment.mState < Fragment.CREATED && mManager.mCurState >= Fragment.CREATED) {
+            if (fragment.mState < Fragment.CREATED && mManager.mCurState >= Fragment.CREATED &&
+                    mManager.mHost.getContext().getApplicationInfo().targetSdkVersion >=
+                    Build.VERSION_CODES.N) {
                 mManager.makeActive(fragment);
                 mManager.moveToState(fragment, Fragment.CREATED, 0, 0, false);
             }