diff options
author | Tim Murray <timmurray@google.com> | 2019-11-12 13:29:34 -0800 |
---|---|---|
committer | Tim Murray <timmurray@google.com> | 2020-02-05 16:12:17 -0800 |
commit | 270296da8331197f49017688c2be860e7d1a920a (patch) | |
tree | db088ceb42c187eb89c76dd4345f1f54deb8213a /location | |
parent | 334eedc54994ca212588cb3baae02c6ff58cb591 (diff) |
LocationManager: move impl of setLocationEnabledForUser to server
Makes caching significantly easier.
Test: boots, works, gets location
Bug: 140788621
Change-Id: Ief39b3a985deea93e0e5f126863a3df383be5fd4
Diffstat (limited to 'location')
-rw-r--r-- | location/java/android/location/ILocationManager.aidl | 1 | ||||
-rw-r--r-- | location/java/android/location/LocationManager.java | 12 |
2 files changed, 6 insertions, 7 deletions
diff --git a/location/java/android/location/ILocationManager.aidl b/location/java/android/location/ILocationManager.aidl index 6a5c0ec9457a..58ecb5bda3d3 100644 --- a/location/java/android/location/ILocationManager.aidl +++ b/location/java/android/location/ILocationManager.aidl @@ -107,6 +107,7 @@ 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 opPackageName); void removeTestProvider(String provider, String opPackageName); void setTestProviderLocation(String provider, in Location loc, String opPackageName); diff --git a/location/java/android/location/LocationManager.java b/location/java/android/location/LocationManager.java index 197787e5b6e6..07c5742bf43f 100644 --- a/location/java/android/location/LocationManager.java +++ b/location/java/android/location/LocationManager.java @@ -446,13 +446,11 @@ public class LocationManager { @TestApi @RequiresPermission(WRITE_SECURE_SETTINGS) public void setLocationEnabledForUser(boolean enabled, @NonNull UserHandle userHandle) { - Settings.Secure.putIntForUser( - mContext.getContentResolver(), - Settings.Secure.LOCATION_MODE, - enabled - ? Settings.Secure.LOCATION_MODE_ON - : Settings.Secure.LOCATION_MODE_OFF, - userHandle.getIdentifier()); + try { + mService.setLocationEnabledForUser(enabled, userHandle.getIdentifier()); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } } /** |