Revert "Fix onPackageChanged handling of disabled packages"

This reverts commit 33139c16611fed10883afe8cae5f03c8a69570b4.

Reason for revert: A CTS test is now flaky, see b/197093424

Change-Id: Ife432938448cc24bb2a61fa30873270bcf2ee1a7
diff --git a/services/backup/backuplib/java/com/android/server/backup/TransportManager.java b/services/backup/backuplib/java/com/android/server/backup/TransportManager.java
index b3773e3..fd573d5 100644
--- a/services/backup/backuplib/java/com/android/server/backup/TransportManager.java
+++ b/services/backup/backuplib/java/com/android/server/backup/TransportManager.java
@@ -16,9 +16,6 @@
 
 package com.android.server.backup;
 
-import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_DISABLED;
-import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_ENABLED;
-
 import android.annotation.Nullable;
 import android.annotation.UserIdInt;
 import android.annotation.WorkerThread;
@@ -60,7 +57,6 @@
 /** Handles in-memory bookkeeping of all BackupTransport objects. */
 public class TransportManager {
     private static final String TAG = "BackupTransportManager";
-    private static final boolean MORE_DEBUG = false;
 
     @VisibleForTesting
     public static final String SERVICE_ACTION_TRANSPORT_HOST = "android.backup.TRANSPORT_HOST";
@@ -132,52 +128,14 @@
         }
     }
 
-    void onPackageEnabled(String packageName) {
-        onPackageAdded(packageName);
-    }
-
-    void onPackageDisabled(String packageName) {
-        onPackageRemoved(packageName);
-    }
-
     @WorkerThread
     void onPackageChanged(String packageName, String... components) {
-        // Determine if the overall package has changed and not just its
-        // components - see {@link EXTRA_CHANGED_COMPONENT_NAME_LIST}.  When we
-        // know a package was enabled/disabled we'll handle that directly and
-        // not continue with onPackageChanged.
-        if (components.length == 1 && components[0].equals(packageName)) {
-            final int enabled = mPackageManager.getApplicationEnabledSetting(packageName);
-            switch (enabled) {
-                case COMPONENT_ENABLED_STATE_ENABLED: {
-                    if (MORE_DEBUG) {
-                        Slog.d(TAG, "Package " + packageName + " was enabled.");
-                    }
-                    onPackageEnabled(packageName);
-                    return;
-                }
-                case COMPONENT_ENABLED_STATE_DISABLED: {
-                    if (MORE_DEBUG) {
-                        Slog.d(TAG, "Package " + packageName + " was disabled.");
-                    }
-                    onPackageDisabled(packageName);
-                    return;
-                }
-                default: {
-                    Slog.w(TAG, "Package " + packageName + " enabled setting: " + enabled);
-                    return;
-                }
-            }
-        }
         // Unfortunately this can't be atomic because we risk a deadlock if
         // registerTransportsFromPackage() is put inside the synchronized block
         Set<ComponentName> transportComponents = new ArraySet<>(components.length);
         for (String componentName : components) {
             transportComponents.add(new ComponentName(packageName, componentName));
         }
-        if (transportComponents.isEmpty()) {
-            return;
-        }
         synchronized (mTransportLock) {
             mRegisteredTransportsDescriptionMap.keySet().removeIf(transportComponents::contains);
         }
diff --git a/services/robotests/backup/src/com/android/server/backup/TransportManagerTest.java b/services/robotests/backup/src/com/android/server/backup/TransportManagerTest.java
index fc36655..42115d4 100644
--- a/services/robotests/backup/src/com/android/server/backup/TransportManagerTest.java
+++ b/services/robotests/backup/src/com/android/server/backup/TransportManagerTest.java
@@ -16,10 +16,6 @@
 
 package com.android.server.backup;
 
-import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_DEFAULT;
-import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_DISABLED;
-import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_ENABLED;
-
 import static com.android.server.backup.testing.TransportData.genericTransport;
 import static com.android.server.backup.testing.TransportTestUtils.mockTransport;
 import static com.android.server.backup.testing.TransportTestUtils.setUpTransportsForTransportManager;
@@ -316,71 +312,6 @@
     }
 
     @Test
-    public void testOnPackageChanged_onPackageChanged_packageDisabledUnregistersTransport()
-            throws Exception {
-        TransportManager transportManager =
-                createTransportManagerWithRegisteredTransports(mTransportA1, mTransportB1);
-        reset(mListener);
-
-        mContext.getPackageManager()
-                .setApplicationEnabledSetting(
-                        PACKAGE_A,
-                        Integer.valueOf(COMPONENT_ENABLED_STATE_DISABLED),
-                        0 /*flags*/);
-        transportManager.onPackageChanged(PACKAGE_A, PACKAGE_A);
-
-        assertRegisteredTransports(transportManager, singletonList(mTransportB1));
-        verify(mListener, never()).onTransportRegistered(any(), any());
-    }
-
-    @Test
-    public void testOnPackageChanged_onPackageChanged_packageEnabledRegistersTransport()
-            throws Exception {
-        TransportManager transportManager =
-                createTransportManagerWithRegisteredTransports(mTransportA1, mTransportB1);
-        reset(mListener);
-
-        mContext.getPackageManager()
-                .setApplicationEnabledSetting(
-                        PACKAGE_A,
-                        Integer.valueOf(COMPONENT_ENABLED_STATE_DISABLED),
-                        0 /*flags*/);
-        transportManager.onPackageChanged(PACKAGE_A, PACKAGE_A);
-
-        assertRegisteredTransports(transportManager, singletonList(mTransportB1));
-        verify(mListener, never()).onTransportRegistered(any(), any());
-
-        mContext.getPackageManager()
-                .setApplicationEnabledSetting(
-                        PACKAGE_A,
-                        Integer.valueOf(COMPONENT_ENABLED_STATE_ENABLED),
-                        0 /*flags*/);
-        transportManager.onPackageChanged(PACKAGE_A, PACKAGE_A);
-
-        assertRegisteredTransports(transportManager, asList(mTransportA1, mTransportB1));
-        verify(mListener)
-                .onTransportRegistered(mTransportA1.transportName, mTransportA1.transportDirName);
-    }
-
-    @Test
-    public void testOnPackageChanged_onPackageChanged_unknownComponentStateIsIgnored()
-            throws Exception {
-        TransportManager transportManager =
-                createTransportManagerWithRegisteredTransports(mTransportA1, mTransportB1);
-        reset(mListener);
-
-        mContext.getPackageManager()
-                .setApplicationEnabledSetting(
-                        PACKAGE_A,
-                        Integer.valueOf(COMPONENT_ENABLED_STATE_DEFAULT),
-                        0 /*flags*/);
-        transportManager.onPackageChanged(PACKAGE_A, PACKAGE_A);
-
-        assertRegisteredTransports(transportManager, asList(mTransportA1, mTransportB1));
-        verify(mListener, never()).onTransportRegistered(any(), any());
-    }
-
-    @Test
     public void testRegisterAndSelectTransport_whenTransportRegistered() throws Exception {
         TransportManager transportManager =
                 createTransportManagerWithRegisteredTransports(null, mTransportA1);
diff --git a/services/robotests/src/com/android/server/testing/shadows/ShadowApplicationPackageManager.java b/services/robotests/src/com/android/server/testing/shadows/ShadowApplicationPackageManager.java
index e4c34a3..aea36e5 100644
--- a/services/robotests/src/com/android/server/testing/shadows/ShadowApplicationPackageManager.java
+++ b/services/robotests/src/com/android/server/testing/shadows/ShadowApplicationPackageManager.java
@@ -16,7 +16,6 @@
 
 package com.android.server.testing.shadows;
 
-import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_DEFAULT;
 import static android.content.pm.PackageManager.NameNotFoundException;
 
 import android.app.ApplicationPackageManager;
@@ -45,7 +44,6 @@
     private static final List<PackageInfo> sInstalledPackages = new ArrayList<>();
     private static final Map<String, Integer> sPackageUids = new ArrayMap<>();
     private static final Map<Integer, Map<String, Integer>> sUserPackageUids = new ArrayMap<>();
-    private static final Map<String, Integer> sPackageAppEnabledStates = new ArrayMap<>();
 
     /**
      * Registers the package {@code packageName} to be returned when invoking {@link
@@ -55,7 +53,6 @@
     public static void addInstalledPackage(String packageName, PackageInfo packageInfo) {
         sPackageInfos.put(packageName, packageInfo);
         sInstalledPackages.add(packageInfo);
-        sPackageAppEnabledStates.put(packageName, Integer.valueOf(COMPONENT_ENABLED_STATE_DEFAULT));
     }
 
     /**
@@ -80,19 +77,6 @@
     }
 
     @Override
-    protected int getApplicationEnabledSetting(String packageName) {
-        if (!sPackageAppEnabledStates.containsKey(packageName)) {
-            return COMPONENT_ENABLED_STATE_DEFAULT;
-        }
-        return sPackageAppEnabledStates.get(packageName);
-    }
-
-    @Override
-    protected void setApplicationEnabledSetting(String packageName, int newState, int flags) {
-        sPackageAppEnabledStates.put(packageName, Integer.valueOf(newState));  // flags unused here.
-    }
-
-    @Override
     protected PackageInfo getPackageInfoAsUser(String packageName, int flags, int userId)
             throws NameNotFoundException {
         if (!sPackageInfos.containsKey(packageName)) {
@@ -131,7 +115,6 @@
     public static void reset() {
         sPackageInfos.clear();
         sInstalledPackages.clear();
-        sPackageAppEnabledStates.clear();
         org.robolectric.shadows.ShadowApplicationPackageManager.reset();
     }
 }