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

Commit 760c0393 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Fix include location data to check for coarse location first." into...

Merge "Fix include location data to check for coarse location first." into tm-dev am: f8e43432 am: dc555c19

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



Change-Id: I127569f0ec6273d4055f356372fc06da85e7341e
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents a9cdb9e0 dc555c19
Loading
Loading
Loading
Loading
+0 −6
Original line number Diff line number Diff line
@@ -1036,12 +1036,6 @@ public class TelephonyRegistry extends ITelephonyRegistry.Stub {
                callingFeatureId, callback, eventList, notifyNow, subId);
    }

    private void listen(String callingPackage, @Nullable String callingFeatureId,
            IPhoneStateListener callback, Set<Integer> events, boolean notifyNow, int subId) {
        listen(false, false, callingPackage,
                callingFeatureId, callback, events, notifyNow, subId);
    }

    private void listen(boolean renounceFineLocationAccess,
            boolean renounceCoarseLocationAccess, String callingPackage,
            @Nullable String callingFeatureId, IPhoneStateListener callback,
+15 −19
Original line number Diff line number Diff line
@@ -12190,15 +12190,7 @@ public class TelephonyManager {
    })
    @RequiresFeature(PackageManager.FEATURE_TELEPHONY_RADIO_ACCESS)
    public @Nullable ServiceState getServiceState() {
        if (getRenouncedPermissions().contains(Manifest.permission.ACCESS_FINE_LOCATION))  {
            if (getRenouncedPermissions().contains(Manifest.permission.ACCESS_COARSE_LOCATION)) {
                return getServiceState(INCLUDE_LOCATION_DATA_NONE);
            } else {
                return getServiceState(INCLUDE_LOCATION_DATA_COARSE);
            }
        }
        return getServiceState(INCLUDE_LOCATION_DATA_FINE);
        return getServiceState(getLocationData());
    }
    /**
@@ -16189,19 +16181,23 @@ public class TelephonyManager {
     */
    public void registerTelephonyCallback(@NonNull @CallbackExecutor Executor executor,
            @NonNull TelephonyCallback callback) {
        if (getRenouncedPermissions().contains(Manifest.permission.ACCESS_FINE_LOCATION))  {
            if (getRenouncedPermissions().contains(Manifest.permission.ACCESS_COARSE_LOCATION)) {
                registerTelephonyCallback(INCLUDE_LOCATION_DATA_NONE, executor, callback);
                return;
        registerTelephonyCallback(getLocationData(), executor, callback);
    }
    private int getLocationData() {
        boolean renounceCoarseLocation =
                getRenouncedPermissions().contains(Manifest.permission.ACCESS_COARSE_LOCATION);
        boolean renounceFineLocation =
                getRenouncedPermissions().contains(Manifest.permission.ACCESS_FINE_LOCATION);
        if (renounceCoarseLocation) {
            return INCLUDE_LOCATION_DATA_NONE;
        } else if (renounceFineLocation) {
            return INCLUDE_LOCATION_DATA_COARSE;
        } else {
                registerTelephonyCallback(INCLUDE_LOCATION_DATA_COARSE, executor, callback);
                return;
            return INCLUDE_LOCATION_DATA_FINE;
        }
    }
        registerTelephonyCallback(INCLUDE_LOCATION_DATA_FINE, executor, callback);
    }
    /** @hide */
    @Retention(RetentionPolicy.SOURCE)
    @IntDef(prefix = {"INCLUDE_LOCATION_DATA_"}, value = {