diff --git a/api/test-current.txt b/api/test-current.txt index 25a471086409a..796ab94ecd698 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -1720,7 +1720,6 @@ package android.location { method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void getCurrentLocation(@NonNull android.location.LocationRequest, @Nullable android.os.CancellationSignal, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer); method @NonNull public String[] getIgnoreSettingsWhitelist(); method @Deprecated @Nullable @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public java.util.List getProviderPackages(@NonNull String); - method @NonNull public java.util.List getTestProviderCurrentRequests(String); method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull android.location.LocationListener, @Nullable android.os.Looper); method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull java.util.concurrent.Executor, @NonNull android.location.LocationListener); method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_COARSE_LOCATION, android.Manifest.permission.ACCESS_FINE_LOCATION}) public void requestLocationUpdates(@Nullable android.location.LocationRequest, @NonNull android.app.PendingIntent); diff --git a/location/java/android/location/ILocationManager.aidl b/location/java/android/location/ILocationManager.aidl index 5ae9dd25c578e..42cf53b44f1e6 100644 --- a/location/java/android/location/ILocationManager.aidl +++ b/location/java/android/location/ILocationManager.aidl @@ -106,11 +106,12 @@ interface ILocationManager boolean isProviderEnabledForUser(String provider, int userId); boolean isLocationEnabledForUser(int userId); void setLocationEnabledForUser(boolean enabled, int userId); + void addTestProvider(String name, in ProviderProperties properties, String packageName, String attributionTag); void removeTestProvider(String provider, String packageName, String attributionTag); void setTestProviderLocation(String provider, in Location location, String packageName, String attributionTag); void setTestProviderEnabled(String provider, boolean enabled, String packageName, String attributionTag); - List getTestProviderCurrentRequests(String provider); + LocationTime getGnssTimeMillis(); void sendExtraCommand(String provider, String command, inout Bundle extras); diff --git a/location/java/android/location/LocationManager.java b/location/java/android/location/LocationManager.java index f87988c1594c2..30a4ada1b3881 100644 --- a/location/java/android/location/LocationManager.java +++ b/location/java/android/location/LocationManager.java @@ -1814,22 +1814,6 @@ public class LocationManager { @Deprecated public void clearTestProviderStatus(@NonNull String provider) {} - /** - * Get the last list of {@link LocationRequest}s sent to the provider. - * - * @hide - */ - @TestApi - @NonNull - public List getTestProviderCurrentRequests(String providerName) { - Preconditions.checkArgument(providerName != null, "invalid null provider"); - try { - return mService.getTestProviderCurrentRequests(providerName); - } catch (RemoteException e) { - throw e.rethrowFromSystemServer(); - } - } - /** * Sets a proximity alert for the location given by the position (latitude, longitude) and the * given radius. diff --git a/services/core/java/com/android/server/location/LocationManagerService.java b/services/core/java/com/android/server/location/LocationManagerService.java index f72fee6891909..cdb73d8ad6a23 100644 --- a/services/core/java/com/android/server/location/LocationManagerService.java +++ b/services/core/java/com/android/server/location/LocationManagerService.java @@ -216,7 +216,7 @@ public class LocationManagerService extends ILocationManager.Stub { private final LocalService mLocalService; private final GeofenceManager mGeofenceManager; - @Nullable private volatile GnssManagerService mGnssManagerService = null; + private volatile @Nullable GnssManagerService mGnssManagerService = null; private GeocoderProxy mGeocodeProvider; @GuardedBy("mLock") @@ -604,7 +604,8 @@ public class LocationManagerService extends ILocationManager.Stub { || !request.getWorkSource().isEmpty(); if (usesSystemApi && isChangeEnabled(PREVENT_PENDING_INTENT_SYSTEM_API_USAGE, identity.getUid())) { - throw new SecurityException("PendingIntent location requests may not use system APIs"); + throw new SecurityException( + "PendingIntent location requests may not use system APIs: " + request); } request = validateLocationRequest(request, identity); @@ -1090,19 +1091,6 @@ public class LocationManagerService extends ILocationManager.Stub { manager.setMockProviderAllowed(enabled); } - @Override - @NonNull - public List getTestProviderCurrentRequests(String provider) { - mContext.enforceCallingOrSelfPermission(permission.READ_DEVICE_CONFIG, null); - - LocationProviderManager manager = getLocationProviderManager(provider); - if (manager == null) { - throw new IllegalArgumentException("provider doesn't exist: " + provider); - } - - return manager.getMockProviderRequests(); - } - @Override public int handleShellCommand(ParcelFileDescriptor in, ParcelFileDescriptor out, ParcelFileDescriptor err, String[] args) { diff --git a/services/core/java/com/android/server/location/LocationProviderManager.java b/services/core/java/com/android/server/location/LocationProviderManager.java index ecf82e8f8bd6e..2f6b7192c2e24 100644 --- a/services/core/java/com/android/server/location/LocationProviderManager.java +++ b/services/core/java/com/android/server/location/LocationProviderManager.java @@ -1391,16 +1391,6 @@ class LocationProviderManager extends } } - public List getMockProviderRequests() { - synchronized (mLock) { - if (!mProvider.isMock()) { - throw new IllegalArgumentException(mName + " provider is not a test provider"); - } - - return mProvider.getCurrentRequest().getLocationRequests(); - } - } - @Nullable public Location getLastLocation(CallerIdentity identity, @PermissionLevel int permissionLevel, boolean ignoreLocationSettings) { diff --git a/services/core/java/com/android/server/power/batterysaver/TEST_MAPPING b/services/core/java/com/android/server/power/batterysaver/TEST_MAPPING new file mode 100644 index 0000000000000..17dba7df3f1fd --- /dev/null +++ b/services/core/java/com/android/server/power/batterysaver/TEST_MAPPING @@ -0,0 +1,19 @@ +{ + "presubmit": [ + { + "name": "CtsLocationCoarseTestCases" + }, + { + "name": "CtsLocationFineTestCases" + }, + { + "name": "CtsLocationNoneTestCases" + }, + { + "name": "FrameworksMockingServicesTests", + "options": [ + {"include-filter": "com.android.server.location"} + ] + } + ] +}