diff --git a/services/core/java/com/android/server/TelephonyRegistry.java b/services/core/java/com/android/server/TelephonyRegistry.java index 839cdc6eaca3d..a67b858d7b63e 100644 --- a/services/core/java/com/android/server/TelephonyRegistry.java +++ b/services/core/java/com/android/server/TelephonyRegistry.java @@ -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 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, diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java index f01a1cfb48ab6..8a75ae45c3a51 100644 --- a/telephony/java/android/telephony/TelephonyManager.java +++ b/telephony/java/android/telephony/TelephonyManager.java @@ -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,17 +16181,21 @@ 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; - } else { - registerTelephonyCallback(INCLUDE_LOCATION_DATA_COARSE, executor, callback); - return; - } - } + registerTelephonyCallback(getLocationData(), executor, callback); + } - registerTelephonyCallback(INCLUDE_LOCATION_DATA_FINE, 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 { + return INCLUDE_LOCATION_DATA_FINE; + } } /** @hide */