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

Commit 426cd69c authored by Brian Julian's avatar Brian Julian Committed by Android (Google) Code Review
Browse files

Merge "Add a permissions check to LocationManagerService."

parents 40b0d082 16560c09
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -5876,7 +5876,7 @@ package android.location {
  }
  public class LocationManager {
    method @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void addProviderRequestChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.location.provider.ProviderRequest.ChangedListener);
    method @RequiresPermission(allOf={android.Manifest.permission.LOCATION_HARDWARE, android.Manifest.permission.INTERACT_ACROSS_USERS}) public void addProviderRequestChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.location.provider.ProviderRequest.ChangedListener);
    method @Deprecated @RequiresPermission(android.Manifest.permission.LOCATION_HARDWARE) public void flushGnssBatch();
    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<android.location.Location>);
    method @Nullable public String getExtraLocationControllerPackage();
+2 −1
Original line number Diff line number Diff line
@@ -2910,7 +2910,8 @@ public class LocationManager {
     * @hide
     */
    @SystemApi
    @RequiresPermission(Manifest.permission.LOCATION_HARDWARE)
    @RequiresPermission(allOf = {Manifest.permission.LOCATION_HARDWARE,
            Manifest.permission.INTERACT_ACROSS_USERS})
    public void addProviderRequestChangedListener(
            @NonNull @CallbackExecutor Executor executor,
            @NonNull ChangedListener listener) {
+3 −0
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.server.location;

import static android.Manifest.permission.ACCESS_FINE_LOCATION;
import static android.Manifest.permission.INTERACT_ACROSS_USERS;
import static android.Manifest.permission.WRITE_SECURE_SETTINGS;
import static android.app.compat.CompatChanges.isChangeEnabled;
import static android.content.pm.PackageManager.MATCH_DIRECT_BOOT_AWARE;
@@ -1029,7 +1030,9 @@ public class LocationManagerService extends ILocationManager.Stub implements
    }

    @Override
    @RequiresPermission(INTERACT_ACROSS_USERS)
    public void addProviderRequestListener(IProviderRequestListener listener) {
        mContext.enforceCallingOrSelfPermission(INTERACT_ACROSS_USERS, null);
        for (LocationProviderManager manager : mProviderManagers) {
            manager.addProviderRequestListener(listener);
        }