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

Commit 3819f972 authored by Soonil Nagarkar's avatar Soonil Nagarkar
Browse files

Revert requestSetProviderEnabled API

Bug: 144955780
Test: presubmits
Change-Id: Iec8520acfd98b9d9d92a4876ebfa899ac2a0731e
parent 0792b12f
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -6969,7 +6969,6 @@ package android.app.admin {
    method public boolean removeOverrideApn(@NonNull android.content.ComponentName, int);
    method public boolean removeUser(@NonNull android.content.ComponentName, @NonNull android.os.UserHandle);
    method public boolean requestBugreport(@NonNull android.content.ComponentName);
    method public void requestSetLocationProviderAllowed(@NonNull android.content.ComponentName, @NonNull String, boolean);
    method @Deprecated public boolean resetPassword(String, int);
    method public boolean resetPasswordWithToken(@NonNull android.content.ComponentName, String, byte[], int);
    method @Nullable public java.util.List<android.app.admin.NetworkEvent> retrieveNetworkLogs(@Nullable android.content.ComponentName, long);
+0 −43
Original line number Diff line number Diff line
@@ -8948,49 +8948,6 @@ public class DevicePolicyManager {
        }
    }
    /**
     * Called by device owners to request a location provider to change its allowed state. For a
     * provider to be enabled requires both that the master location setting is enabled, and that
     * the provider itself is allowed. Most location providers are always allowed. Some location
     * providers may have user consents or terms and conditions that must be accepted, or some other
     * type of blocker before they are allowed however. Every location provider is responsible for
     * its own allowed state.
     *
     * <p>This method requests that a location provider change its allowed state. For providers that
     * are always allowed and have no state to change, this will have no effect. If the provider
     * does require some consent, terms and conditions, or other blocking state, using this API
     * implies that the device owner is agreeing/disagreeing to any consents, terms and conditions,
     * etc, and the provider should make a best effort to adjust it's allowed state accordingly.
     *
     * <p>Location providers are generally only responsible for the current user, and callers must
     * assume that this method will only affect provider state for the current user. Callers are
     * responsible for tracking current user changes and re-updating provider state as necessary.
     *
     * <p>While providers are expected to make a best effort to honor this request, it is not a
     * given that all providers will support such a request. If a provider does change its state as
     * a result of this request, that may happen asynchronously after some delay. Test location
     * providers set through {@link android.location.LocationManager#addTestProvider} will respond
     * to this request to aide in testing.
     *
     * @param admin          Which {@link DeviceAdminReceiver} this request is associated with
     * @param provider       A location provider as listed by
     *                       {@link android.location.LocationManager#getAllProviders()}
     * @param providerAllowed Whether the location provider is being requested to enable or disable
     *                       itself
     * @throws SecurityException if {@code admin} is not a device owner.
     */
    public void requestSetLocationProviderAllowed(@NonNull ComponentName admin,
            @NonNull String provider, boolean providerAllowed) {
        throwIfParentInstance("requestSetLocationProviderAllowed");
        if (mService != null) {
            try {
                mService.requestSetLocationProviderAllowed(admin, provider, providerAllowed);
            } catch (RemoteException e) {
                throw e.rethrowFromSystemServer();
            }
        }
    }
    /**
     * Called by profile or device owners to update {@link android.provider.Settings.Secure}
     * settings. Validation that the value of the setting is in the correct form for the setting
+0 −1
Original line number Diff line number Diff line
@@ -270,7 +270,6 @@ interface IDevicePolicyManager {
    boolean hasLockdownAdminConfiguredNetworks(in ComponentName who);

    void setLocationEnabled(in ComponentName who, boolean locationEnabled);
    void requestSetLocationProviderAllowed(in ComponentName who, in String provider, boolean providerAllowed);

    boolean setTime(in ComponentName who, long millis);
    boolean setTimeZone(in ComponentName who, String timeZone);
+0 −16
Original line number Diff line number Diff line
@@ -26,22 +26,6 @@ import android.annotation.NonNull;
 */
public abstract class LocationManagerInternal {

    /**
     * Requests that a provider change its allowed state. A provider may or may not honor this
     * request, and if the provider does change its state as a result, that may happen
     * asynchronously after some delay.
     *
     * <p>Setting a provider's state to allowed implies that any consents or terms and conditions
     * that may be necessary to allow the provider are agreed to. Setting a providers state to
     * disallowed implies that any consents or terms and conditions have their agreement revoked.
     *
     * @param provider A location provider as listed by {@link LocationManager#getAllProviders()}
     * @param allowed  Whether the location provider is being requested to allow or disallow
     *                 itself
     * @throws IllegalArgumentException if provider is null
     */
    public abstract void requestSetProviderAllowed(@NonNull String provider, boolean allowed);

    /**
     * Returns true if the given provider is enabled for the given user.
     *
+0 −2
Original line number Diff line number Diff line
@@ -37,6 +37,4 @@ interface ILocationProvider {

    @UnsupportedAppUsage
    oneway void sendExtraCommand(String command, in Bundle extras);

    oneway void requestSetAllowed(boolean allowed);
}
Loading