Revert "Call ActivityCallbacks after corresponding activity methods"

This reverts commit 660cf30e2100d8ed40198c95f93b61e5d1cdb10c.

bug: 34415265
bug: 34914977
Test: chrome launches

Change-Id: I170365fd47313bafb0d722e6d55ee119336137c4
(cherry picked from commit ff5659fbc3026e621bdd926e96096e2957cfd42e)
diff --git a/api/current.txt b/api/current.txt
index 0f146d7..4f63ff6 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -4171,7 +4171,6 @@
     method public abstract void onActivityCreated(android.app.Activity, android.os.Bundle);
     method public abstract void onActivityDestroyed(android.app.Activity);
     method public abstract void onActivityPaused(android.app.Activity);
-    method public default void onActivityPreCreated(android.app.Activity, android.os.Bundle);
     method public abstract void onActivityResumed(android.app.Activity);
     method public abstract void onActivitySaveInstanceState(android.app.Activity, android.os.Bundle);
     method public abstract void onActivityStarted(android.app.Activity);
diff --git a/api/system-current.txt b/api/system-current.txt
index 5ccfbce..03710e6 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -4313,7 +4313,6 @@
     method public abstract void onActivityCreated(android.app.Activity, android.os.Bundle);
     method public abstract void onActivityDestroyed(android.app.Activity);
     method public abstract void onActivityPaused(android.app.Activity);
-    method public default void onActivityPreCreated(android.app.Activity, android.os.Bundle);
     method public abstract void onActivityResumed(android.app.Activity);
     method public abstract void onActivitySaveInstanceState(android.app.Activity, android.os.Bundle);
     method public abstract void onActivityStarted(android.app.Activity);
diff --git a/api/test-current.txt b/api/test-current.txt
index 896c142..29d152a 100644
--- a/api/test-current.txt
+++ b/api/test-current.txt
@@ -4181,7 +4181,6 @@
     method public abstract void onActivityCreated(android.app.Activity, android.os.Bundle);
     method public abstract void onActivityDestroyed(android.app.Activity);
     method public abstract void onActivityPaused(android.app.Activity);
-    method public default void onActivityPreCreated(android.app.Activity, android.os.Bundle);
     method public abstract void onActivityResumed(android.app.Activity);
     method public abstract void onActivitySaveInstanceState(android.app.Activity, android.os.Bundle);
     method public abstract void onActivityStarted(android.app.Activity);
diff --git a/core/java/android/app/Activity.java b/core/java/android/app/Activity.java
index 0ac30de..6f95309 100644
--- a/core/java/android/app/Activity.java
+++ b/core/java/android/app/Activity.java
@@ -969,9 +969,7 @@
                     ? mLastNonConfigurationInstances.fragments : null);
         }
         mFragments.dispatchCreate();
-        if (!isAtLeastO()) {
-            getApplication().dispatchActivityCreated(this, savedInstanceState);
-        }
+        getApplication().dispatchActivityCreated(this, savedInstanceState);
         if (mVoiceInteractor != null) {
             mVoiceInteractor.attachActivity(this);
         }
@@ -1199,9 +1197,8 @@
         mCalled = true;
 
         mFragments.doLoaderStart();
-        if (!isAtLeastO()) {
-            getApplication().dispatchActivityStarted(this);
-        }
+
+        getApplication().dispatchActivityStarted(this);
     }
 
     /**
@@ -1262,9 +1259,7 @@
     @CallSuper
     protected void onResume() {
         if (DEBUG_LIFECYCLE) Slog.v(TAG, "onResume " + this);
-        if (!isAtLeastO()) {
-            getApplication().dispatchActivityResumed(this);
-        }
+        getApplication().dispatchActivityResumed(this);
         mActivityTransitionState.onResume(this, isTopOfTask());
         mCalled = true;
     }
@@ -1431,9 +1426,6 @@
         saveManagedDialogs(outState);
         mActivityTransitionState.saveState(outState);
         storeHasCurrentPermissionRequest(outState);
-        if (isAtLeastO()) {
-            getApplication().dispatchActivitySaveInstanceState(this, outState);
-        }
         if (DEBUG_LIFECYCLE) Slog.v(TAG, "onSaveInstanceState " + this + ": " + outState);
     }
 
@@ -1450,9 +1442,6 @@
         onSaveInstanceState(outState, outPersistentState);
         saveManagedDialogs(outState);
         storeHasCurrentPermissionRequest(outState);
-        if (isAtLeastO()) {
-            getApplication().dispatchActivitySaveInstanceState(this, outState);
-        }
         if (DEBUG_LIFECYCLE) Slog.v(TAG, "onSaveInstanceState " + this + ": " + outState +
                 ", " + outPersistentState);
     }
@@ -1508,9 +1497,7 @@
         if (p != null) {
             outState.putParcelable(FRAGMENTS_TAG, p);
         }
-        if (!isAtLeastO()) {
-            getApplication().dispatchActivitySaveInstanceState(this, outState);
-        }
+        getApplication().dispatchActivitySaveInstanceState(this, outState);
     }
 
     /**
@@ -1608,9 +1595,7 @@
     @CallSuper
     protected void onPause() {
         if (DEBUG_LIFECYCLE) Slog.v(TAG, "onPause " + this);
-        if (!isAtLeastO()) {
-            getApplication().dispatchActivityPaused(this);
-        }
+        getApplication().dispatchActivityPaused(this);
         mCalled = true;
     }
 
@@ -1810,9 +1795,7 @@
         if (DEBUG_LIFECYCLE) Slog.v(TAG, "onStop " + this);
         if (mActionBar != null) mActionBar.setShowHideAnimationEnabled(false);
         mActivityTransitionState.onStop();
-        if (!isAtLeastO()) {
-            getApplication().dispatchActivityStopped(this);
-        }
+        getApplication().dispatchActivityStopped(this);
         mTranslucentCallback = null;
         mCalled = true;
     }
@@ -1882,9 +1865,8 @@
         if (mActionBar != null) {
             mActionBar.onDestroy();
         }
-        if (!isAtLeastO()) {
-            getApplication().dispatchActivityDestroyed(this);
-        }
+
+        getApplication().dispatchActivityDestroyed(this);
     }
 
     /**
@@ -6768,33 +6750,25 @@
         return mParent != null ? mParent.getActivityToken() : mToken;
     }
 
-    final void performCreateCommon(Bundle icicle) {
-        mActivityTransitionState.readState(icicle);
+    final void performCreateCommon() {
         mVisibleFromClient = !mWindow.getWindowStyle().getBoolean(
                 com.android.internal.R.styleable.Window_windowNoDisplay, false);
         mFragments.dispatchActivityCreated();
         mActivityTransitionState.setEnterActivityOptions(this, getActivityOptions());
-        if (isAtLeastO()) {
-            getApplication().dispatchActivityCreated(this, icicle);
-        }
     }
 
     final void performCreate(Bundle icicle) {
         restoreHasCurrentPermissionRequest(icicle);
-        if (isAtLeastO()) {
-            getApplication().dispatchActivityPreCreated(this, icicle);
-        }
         onCreate(icicle);
-        performCreateCommon(icicle);
+        mActivityTransitionState.readState(icicle);
+        performCreateCommon();
     }
 
     final void performCreate(Bundle icicle, PersistableBundle persistentState) {
         restoreHasCurrentPermissionRequest(icicle);
-        if (isAtLeastO()) {
-            getApplication().dispatchActivityPreCreated(this, icicle);
-        }
         onCreate(icicle, persistentState);
-        performCreateCommon(icicle);
+        mActivityTransitionState.readState(icicle);
+        performCreateCommon();
     }
 
     final void performStart() {
@@ -6837,9 +6811,6 @@
         }
 
         mActivityTransitionState.enterReady(this);
-        if (isAtLeastO()) {
-            getApplication().dispatchActivityStarted(this);
-        }
     }
 
     final void performRestart() {
@@ -6915,9 +6886,7 @@
 
         mFragments.dispatchResume();
         mFragments.execPendingActions();
-        if (isAtLeastO()) {
-            getApplication().dispatchActivityResumed(this);
-        }
+
         onPostResume();
         if (!mCalled) {
             throw new SuperNotCalledException(
@@ -6932,15 +6901,13 @@
         mCalled = false;
         onPause();
         mResumed = false;
-        if (isAtLeastO()) {
-            getApplication().dispatchActivityPaused(this);
-        }
         if (!mCalled && getApplicationInfo().targetSdkVersion
                 >= android.os.Build.VERSION_CODES.GINGERBREAD) {
             throw new SuperNotCalledException(
                     "Activity " + mComponent.toShortString() +
                     " did not call through to super.onPause()");
         }
+        mResumed = false;
     }
 
     final void performUserLeaving() {
@@ -6951,7 +6918,7 @@
     final void performStop(boolean preserveWindow) {
         mDoReportFullyDrawn = false;
         mFragments.doLoaderStop(mChangingConfigurations /*retain*/);
-        boolean dispatchActivityStopped = !mStopped;
+
         if (!mStopped) {
             if (mWindow != null) {
                 mWindow.closeAllPanels();
@@ -6988,9 +6955,6 @@
             mStopped = true;
         }
         mResumed = false;
-        if (dispatchActivityStopped && isAtLeastO()) {
-            getApplication().dispatchActivityStopped(this);
-        }
     }
 
     final void performDestroy() {
@@ -7002,13 +6966,6 @@
         if (mVoiceInteractor != null) {
             mVoiceInteractor.detachActivity();
         }
-        if (isAtLeastO()) {
-            getApplication().dispatchActivityDestroyed(this);
-        }
-    }
-
-    private boolean isAtLeastO() {
-        return getApplicationInfo().targetSdkVersion >= Build.VERSION_CODES.O;
     }
 
     final void dispatchMultiWindowModeChanged(boolean isInMultiWindowMode) {
diff --git a/core/java/android/app/Application.java b/core/java/android/app/Application.java
index 03efe68..156df36 100644
--- a/core/java/android/app/Application.java
+++ b/core/java/android/app/Application.java
@@ -55,7 +55,6 @@
     public LoadedApk mLoadedApk;
 
     public interface ActivityLifecycleCallbacks {
-        default void onActivityPreCreated(Activity activity, Bundle savedInstanceState) {}
         void onActivityCreated(Activity activity, Bundle savedInstanceState);
         void onActivityStarted(Activity activity);
         void onActivityResumed(Activity activity);
@@ -191,16 +190,6 @@
         mLoadedApk = ContextImpl.getImpl(context).mPackageInfo;
     }
 
-    /* package */ void dispatchActivityPreCreated(Activity activity, Bundle savedInstanceState) {
-        Object[] callbacks = collectActivityLifecycleCallbacks();
-        if (callbacks != null) {
-            for (int i = 0; i < callbacks.length; i++) {
-                ((ActivityLifecycleCallbacks) callbacks[i]).onActivityPreCreated(activity,
-                        savedInstanceState);
-            }
-        }
-    }
-
     /* package */ void dispatchActivityCreated(Activity activity, Bundle savedInstanceState) {
         Object[] callbacks = collectActivityLifecycleCallbacks();
         if (callbacks != null) {
diff --git a/core/java/android/content/pm/PackageParser.java b/core/java/android/content/pm/PackageParser.java
index 13907ba..a45a2ff 100644
--- a/core/java/android/content/pm/PackageParser.java
+++ b/core/java/android/content/pm/PackageParser.java
@@ -2747,15 +2747,15 @@
         String cls = clsSeq.toString();
         char c = cls.charAt(0);
         if (c == '.') {
-            return (pkg + cls).intern();
+            return pkg + cls;
         }
         if (cls.indexOf('.') < 0) {
             StringBuilder b = new StringBuilder(pkg);
             b.append('.');
             b.append(cls);
-            return b.toString().intern();
+            return b.toString();
         }
-        return cls.intern();
+        return cls;
     }
 
     private static String buildCompoundName(String pkg,
@@ -2775,7 +2775,7 @@
                         + pkg + ": " + nameError;
                 return null;
             }
-            return (pkg + proc).intern();
+            return pkg + proc;
         }
         String nameError = validateName(proc, true, false);
         if (nameError != null && !"system".equals(proc)) {
@@ -2783,7 +2783,7 @@
                     + pkg + ": " + nameError;
             return null;
         }
-        return proc.intern();
+        return proc;
     }
 
     private static String buildProcessName(String pkg, String defProc,
@@ -5103,7 +5103,7 @@
             if (v != null) {
                 if (v.type == TypedValue.TYPE_STRING) {
                     CharSequence cs = v.coerceToString();
-                    data.putString(name, cs != null ? cs.toString().intern() : null);
+                    data.putString(name, cs != null ? cs.toString() : null);
                 } else if (v.type == TypedValue.TYPE_INT_BOOLEAN) {
                     data.putBoolean(name, v.data != 0);
                 } else if (v.type >= TypedValue.TYPE_FIRST_INT