Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7c31aa38 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Changed behavior of DPMS.setLocationEnabled() for automotive." into sc-dev am: cf2f6ff8

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14525263

Change-Id: I6c73265fa86148bda8fc44047fa6c6b86b6023cb
parents 4a133d34 cf2f6ff8
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -10369,11 +10369,11 @@ public class DevicePolicyManager {
    /**
     * Called by device owners to set the user's global location setting.
     *
     * <p><b>Note: </b> this call is ignored on
     * {@link android.content.pm.PackageManager#FEATURE_AUTOMOTIVE automotive builds}.
     *
     * @param admin Which {@link DeviceAdminReceiver} this request is associated with
     * @param locationEnabled whether location should be enabled or disabled
     * @param locationEnabled whether location should be enabled or disabled. <b>Note: </b> on
     * {@link android.content.pm.PackageManager#FEATURE_AUTOMOTIVE automotive builds}, calls to
     * disable will be ignored.
     * @throws SecurityException if {@code admin} is not a device owner.
     */
    public void setLocationEnabled(@NonNull ComponentName admin, boolean locationEnabled) {
+4 −4
Original line number Diff line number Diff line
@@ -11987,8 +11987,8 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
        Preconditions.checkCallAuthorization(isDeviceOwner(caller));
        UserHandle userHandle = caller.getUserHandle();
        if (mIsAutomotive) {
            Slogf.v(LOG_TAG, "setLocationEnabled(%s, %b): ignoring for user %s on automotive build",
        if (mIsAutomotive && !locationEnabled) {
            Slogf.i(LOG_TAG, "setLocationEnabled(%s, %b): ignoring for user %s on automotive build",
                    who.flattenToShortString(), locationEnabled, userHandle);
            return;
        }
@@ -11996,8 +11996,8 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
        mInjector.binderWithCleanCallingIdentity(() -> {
            boolean wasLocationEnabled = mInjector.getLocationManager().isLocationEnabledForUser(
                    userHandle);
            Slogf.v(LOG_TAG, "calling locationManager.setLocationEnabledForUser(%b, %s)",
                    locationEnabled, userHandle);
            Slogf.v(LOG_TAG, "calling locationMgr.setLocationEnabledForUser(%b, %s) when it was %b",
                    locationEnabled, userHandle, wasLocationEnabled);
            mInjector.getLocationManager().setLocationEnabledForUser(locationEnabled, userHandle);
            // make a best effort to only show the notification if the admin is actually enabling