Revert "Scan manager: Suspend scan when location is off"

This reverts commit efc013507b0b2b5c772f6db0389b5bd29116a0b7.

Reason for revert: b/78213091

Change-Id: I104db37bf45d50047b5ff7fb5b2311734185e500
Bug: 78213091
(cherry picked from commit dc99b60a4096d6ae64275a58e38ae87072ab135d)
diff --git a/src/com/android/bluetooth/gatt/ScanManager.java b/src/com/android/bluetooth/gatt/ScanManager.java
index 6f9e0a1..5570db3 100644
--- a/src/com/android/bluetooth/gatt/ScanManager.java
+++ b/src/com/android/bluetooth/gatt/ScanManager.java
@@ -29,7 +29,6 @@
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.hardware.display.DisplayManager;
-import android.location.LocationManager;
 import android.os.Handler;
 import android.os.HandlerThread;
 import android.os.Looper;
@@ -103,7 +102,6 @@
     private DisplayManager mDm;
 
     private ActivityManager mActivityManager;
-    private LocationManager mLocationManager;
     private static final int FOREGROUND_IMPORTANCE_CUTOFF =
             ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND_SERVICE;
 
@@ -117,6 +115,8 @@
         }
     }
 
+    ;
+
     ScanManager(GattService service) {
         mRegularScanClients =
                 Collections.newSetFromMap(new ConcurrentHashMap<ScanClient, Boolean>());
@@ -128,7 +128,6 @@
         mCurUsedTrackableAdvertisements = 0;
         mDm = (DisplayManager) mService.getSystemService(Context.DISPLAY_SERVICE);
         mActivityManager = (ActivityManager) mService.getSystemService(Context.ACTIVITY_SERVICE);
-        mLocationManager = (LocationManager) mService.getSystemService(Context.LOCATION_SERVICE);
     }
 
     void start() {
@@ -142,8 +141,6 @@
             mActivityManager.addOnUidImportanceListener(mUidImportanceListener,
                     FOREGROUND_IMPORTANCE_CUTOFF);
         }
-        IntentFilter locationIntentFilter = new IntentFilter(LocationManager.MODE_CHANGED_ACTION);
-        mService.registerReceiver(mLocationReceiver, locationIntentFilter);
     }
 
     void cleanup() {
@@ -173,8 +170,6 @@
             }
             mHandler = null;
         }
-
-        mService.unregisterReceiver(mLocationReceiver);
     }
 
     void registerScanner(UUID uuid) {
@@ -318,17 +313,6 @@
                 return;
             }
 
-            final boolean locationEnabled = mLocationManager.isLocationEnabled();
-            if (!locationEnabled && !isFiltered && !client.legacyForegroundApp) {
-                Log.i(TAG, "Cannot start unfiltered scan in location-off. This scan will be"
-                        + " resumed when location is on: " + client.scannerId);
-                mSuspendedScanClients.add(client);
-                if (client.stats != null) {
-                    client.stats.recordScanSuspend(client.scannerId);
-                }
-                return;
-            }
-
             // Begin scan operations.
             if (isBatchClient(client)) {
                 mBatchClients.add(client);
@@ -412,7 +396,7 @@
         void handleSuspendScans() {
             for (ScanClient client : mRegularScanClients) {
                 if (!mScanNative.isOpportunisticScanClient(client) && (client.filters == null
-                        || client.filters.isEmpty()) && !client.legacyForegroundApp) {
+                        || client.filters.isEmpty())) {
                     /*Suspend unfiltered scans*/
                     if (client.stats != null) {
                         client.stats.recordScanSuspend(client.scannerId);
@@ -1319,7 +1303,7 @@
 
                 @Override
                 public void onDisplayChanged(int displayId) {
-                    if (isScreenOn() && mLocationManager.isLocationEnabled()) {
+                    if (isScreenOn()) {
                         sendMessage(MSG_RESUME_SCANS, null);
                     } else {
                         sendMessage(MSG_SUSPEND_SCANS, null);
@@ -1340,22 +1324,6 @@
                 }
             };
 
-    private BroadcastReceiver mLocationReceiver =
-            new BroadcastReceiver() {
-                @Override
-                public void onReceive(Context context, Intent intent) {
-                    String action = intent.getAction();
-                    if (LocationManager.MODE_CHANGED_ACTION.equals(action)) {
-                        final boolean locationEnabled = mLocationManager.isLocationEnabled();
-                        if (locationEnabled && isScreenOn()) {
-                            sendMessage(MSG_RESUME_SCANS, null);
-                        } else {
-                            sendMessage(MSG_SUSPEND_SCANS, null);
-                        }
-                    }
-                }
-            };
-
     private void handleImportanceChange(UidImportance imp) {
         if (imp == null) {
             return;