From e6e49b59cc97b2c806a9148972b6b51359b4e038 Mon Sep 17 00:00:00 2001 From: Sooraj Sasindran Date: Wed, 15 Jul 2020 01:27:47 -0700 Subject: [PATCH] Rename setDataEnabledWithReason 1. Rename setDataEnabledWithReason to setDataEnabledForReasn 2. Allow isDataConnectionAllowed to be accessed by same apps as isDataEnabledForReason 3. Make these apis public Bug: 156332911 Test: cts and build Change-Id: I8672ab8861fdec1854427ee9ce5ad8eec8774608 --- api/current.txt | 7 ++ api/system-current.txt | 7 -- non-updatable-api/current.txt | 7 ++ non-updatable-api/system-current.txt | 7 -- telephony/api/system-current.txt | 7 -- .../android/telephony/TelephonyManager.java | 75 +++++++++---------- .../internal/telephony/ITelephony.aidl | 4 +- 7 files changed, 51 insertions(+), 63 deletions(-) diff --git a/api/current.txt b/api/current.txt index 651cda564ee93..ba6a3e229fbb0 100644 --- a/api/current.txt +++ b/api/current.txt @@ -48310,7 +48310,9 @@ package android.telephony { method @Deprecated public String iccTransmitApduBasicChannel(int, int, int, int, int, String); method @Deprecated public String iccTransmitApduLogicalChannel(int, int, int, int, int, int, String); method public boolean isConcurrentVoiceAndDataSupported(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE"}) public boolean isDataConnectionAllowed(); method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.MODIFY_PHONE_STATE}) public boolean isDataEnabled(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isDataEnabledForReason(int); method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isDataRoamingEnabled(); method public boolean isEmergencyNumber(@NonNull String); method public boolean isHearingAidCompatibilitySupported(); @@ -48332,6 +48334,7 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.CALL_PHONE) public void sendUssdRequest(String, android.telephony.TelephonyManager.UssdResponseCallback, android.os.Handler); method public void sendVisualVoicemailSms(String, int, String, android.app.PendingIntent); method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabledForReason(int, boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setForbiddenPlmns(@NonNull java.util.List); method public boolean setLine1NumberForDisplay(String, String); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setNetworkSelectionModeAutomatic(); @@ -48379,6 +48382,10 @@ package android.telephony { field public static final int DATA_CONNECTING = 1; // 0x1 field public static final int DATA_DISCONNECTED = 0; // 0x0 field public static final int DATA_DISCONNECTING = 4; // 0x4 + field public static final int DATA_ENABLED_REASON_CARRIER = 2; // 0x2 + field public static final int DATA_ENABLED_REASON_POLICY = 1; // 0x1 + field public static final int DATA_ENABLED_REASON_THERMAL = 3; // 0x3 + field public static final int DATA_ENABLED_REASON_USER = 0; // 0x0 field public static final int DATA_SUSPENDED = 3; // 0x3 field public static final int DATA_UNKNOWN = -1; // 0xffffffff field public static final String EXTRA_ACTIVE_SIM_SUPPORTED_COUNT = "android.telephony.extra.ACTIVE_SIM_SUPPORTED_COUNT"; diff --git a/api/system-current.txt b/api/system-current.txt index fa4543001f906..8f05993acfb55 100755 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -11218,10 +11218,8 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAnyRadioPoweredOn(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApnMetered(int); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApplicationOnUicc(int); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDataConnectionAllowed(); method public boolean isDataConnectivityPossible(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDataEnabledForApn(int); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isDataEnabledWithReason(int); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isEmergencyAssistanceEnabled(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean isIccLockEnabled(); method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isIdle(); @@ -11253,7 +11251,6 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setCarrierRestrictionRules(@NonNull android.telephony.CarrierRestrictionRules); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataActivationState(int); method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(int, boolean); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabledWithReason(int, boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataRoamingEnabled(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setMultiSimCarrierRestriction(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setOpportunisticNetworkState(boolean); @@ -11291,10 +11288,6 @@ package android.telephony { field public static final int CARRIER_PRIVILEGE_STATUS_HAS_ACCESS = 1; // 0x1 field public static final int CARRIER_PRIVILEGE_STATUS_NO_ACCESS = 0; // 0x0 field public static final int CARRIER_PRIVILEGE_STATUS_RULES_NOT_LOADED = -1; // 0xffffffff - field public static final int DATA_ENABLED_REASON_CARRIER = 2; // 0x2 - field public static final int DATA_ENABLED_REASON_POLICY = 1; // 0x1 - field public static final int DATA_ENABLED_REASON_THERMAL = 3; // 0x3 - field public static final int DATA_ENABLED_REASON_USER = 0; // 0x0 field public static final String EXTRA_ANOMALY_DESCRIPTION = "android.telephony.extra.ANOMALY_DESCRIPTION"; field public static final String EXTRA_ANOMALY_ID = "android.telephony.extra.ANOMALY_ID"; field public static final String EXTRA_PHONE_IN_ECM_STATE = "android.telephony.extra.PHONE_IN_ECM_STATE"; diff --git a/non-updatable-api/current.txt b/non-updatable-api/current.txt index c14f23f6ace05..0650d0a0fd9c2 100644 --- a/non-updatable-api/current.txt +++ b/non-updatable-api/current.txt @@ -46460,7 +46460,9 @@ package android.telephony { method @Deprecated public String iccTransmitApduBasicChannel(int, int, int, int, int, String); method @Deprecated public String iccTransmitApduLogicalChannel(int, int, int, int, int, int, String); method public boolean isConcurrentVoiceAndDataSupported(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE, "android.permission.READ_PRIVILEGED_PHONE_STATE"}) public boolean isDataConnectionAllowed(); method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.MODIFY_PHONE_STATE}) public boolean isDataEnabled(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isDataEnabledForReason(int); method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isDataRoamingEnabled(); method public boolean isEmergencyNumber(@NonNull String); method public boolean isHearingAidCompatibilitySupported(); @@ -46482,6 +46484,7 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.CALL_PHONE) public void sendUssdRequest(String, android.telephony.TelephonyManager.UssdResponseCallback, android.os.Handler); method public void sendVisualVoicemailSms(String, int, String, android.app.PendingIntent); method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(boolean); + method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabledForReason(int, boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setForbiddenPlmns(@NonNull java.util.List); method public boolean setLine1NumberForDisplay(String, String); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setNetworkSelectionModeAutomatic(); @@ -46529,6 +46532,10 @@ package android.telephony { field public static final int DATA_CONNECTING = 1; // 0x1 field public static final int DATA_DISCONNECTED = 0; // 0x0 field public static final int DATA_DISCONNECTING = 4; // 0x4 + field public static final int DATA_ENABLED_REASON_CARRIER = 2; // 0x2 + field public static final int DATA_ENABLED_REASON_POLICY = 1; // 0x1 + field public static final int DATA_ENABLED_REASON_THERMAL = 3; // 0x3 + field public static final int DATA_ENABLED_REASON_USER = 0; // 0x0 field public static final int DATA_SUSPENDED = 3; // 0x3 field public static final int DATA_UNKNOWN = -1; // 0xffffffff field public static final String EXTRA_ACTIVE_SIM_SUPPORTED_COUNT = "android.telephony.extra.ACTIVE_SIM_SUPPORTED_COUNT"; diff --git a/non-updatable-api/system-current.txt b/non-updatable-api/system-current.txt index b41ab93295b58..093b2c89c4d54 100644 --- a/non-updatable-api/system-current.txt +++ b/non-updatable-api/system-current.txt @@ -10086,10 +10086,8 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAnyRadioPoweredOn(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApnMetered(int); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApplicationOnUicc(int); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDataConnectionAllowed(); method public boolean isDataConnectivityPossible(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDataEnabledForApn(int); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isDataEnabledWithReason(int); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isEmergencyAssistanceEnabled(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean isIccLockEnabled(); method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isIdle(); @@ -10121,7 +10119,6 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setCarrierRestrictionRules(@NonNull android.telephony.CarrierRestrictionRules); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataActivationState(int); method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(int, boolean); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabledWithReason(int, boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataRoamingEnabled(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setMultiSimCarrierRestriction(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setOpportunisticNetworkState(boolean); @@ -10159,10 +10156,6 @@ package android.telephony { field public static final int CARRIER_PRIVILEGE_STATUS_HAS_ACCESS = 1; // 0x1 field public static final int CARRIER_PRIVILEGE_STATUS_NO_ACCESS = 0; // 0x0 field public static final int CARRIER_PRIVILEGE_STATUS_RULES_NOT_LOADED = -1; // 0xffffffff - field public static final int DATA_ENABLED_REASON_CARRIER = 2; // 0x2 - field public static final int DATA_ENABLED_REASON_POLICY = 1; // 0x1 - field public static final int DATA_ENABLED_REASON_THERMAL = 3; // 0x3 - field public static final int DATA_ENABLED_REASON_USER = 0; // 0x0 field public static final String EXTRA_ANOMALY_DESCRIPTION = "android.telephony.extra.ANOMALY_DESCRIPTION"; field public static final String EXTRA_ANOMALY_ID = "android.telephony.extra.ANOMALY_ID"; field public static final String EXTRA_PHONE_IN_ECM_STATE = "android.telephony.extra.PHONE_IN_ECM_STATE"; diff --git a/telephony/api/system-current.txt b/telephony/api/system-current.txt index ef94c7677a170..09547d0eeb425 100644 --- a/telephony/api/system-current.txt +++ b/telephony/api/system-current.txt @@ -686,10 +686,8 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isAnyRadioPoweredOn(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApnMetered(int); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isApplicationOnUicc(int); - method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDataConnectionAllowed(); method public boolean isDataConnectivityPossible(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isDataEnabledForApn(int); - method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isDataEnabledWithReason(int); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isEmergencyAssistanceEnabled(); method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean isIccLockEnabled(); method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isIdle(); @@ -721,7 +719,6 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setCarrierRestrictionRules(@NonNull android.telephony.CarrierRestrictionRules); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataActivationState(int); method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(int, boolean); - method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabledWithReason(int, boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataRoamingEnabled(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setMultiSimCarrierRestriction(boolean); method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setOpportunisticNetworkState(boolean); @@ -759,10 +756,6 @@ package android.telephony { field public static final int CARRIER_PRIVILEGE_STATUS_HAS_ACCESS = 1; // 0x1 field public static final int CARRIER_PRIVILEGE_STATUS_NO_ACCESS = 0; // 0x0 field public static final int CARRIER_PRIVILEGE_STATUS_RULES_NOT_LOADED = -1; // 0xffffffff - field public static final int DATA_ENABLED_REASON_CARRIER = 2; // 0x2 - field public static final int DATA_ENABLED_REASON_POLICY = 1; // 0x1 - field public static final int DATA_ENABLED_REASON_THERMAL = 3; // 0x3 - field public static final int DATA_ENABLED_REASON_USER = 0; // 0x0 field public static final String EXTRA_ANOMALY_DESCRIPTION = "android.telephony.extra.ANOMALY_DESCRIPTION"; field public static final String EXTRA_ANOMALY_ID = "android.telephony.extra.ANOMALY_ID"; field public static final String EXTRA_PHONE_IN_ECM_STATE = "android.telephony.extra.PHONE_IN_ECM_STATE"; diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java index f9148d0c44c4a..7a7792242c12b 100644 --- a/telephony/java/android/telephony/TelephonyManager.java +++ b/telephony/java/android/telephony/TelephonyManager.java @@ -9231,7 +9231,7 @@ public class TelephonyManager { * app has carrier privileges (see {@link #hasCarrierPrivileges}). * * @param enable Whether to enable mobile data. - * @deprecated use setDataEnabledWithReason with reason DATA_ENABLED_REASON_USER instead. + * @deprecated use setDataEnabledForReason with reason DATA_ENABLED_REASON_USER instead. * */ @Deprecated @@ -9243,16 +9243,16 @@ public class TelephonyManager { /** * @hide - * @deprecated use {@link #setDataEnabledWithReason(int, boolean)} instead. + * @deprecated use {@link #setDataEnabledForReason(int, boolean)} instead. */ @SystemApi @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDataEnabled(int subId, boolean enable) { try { - setDataEnabledWithReason(subId, DATA_ENABLED_REASON_USER, enable); + setDataEnabledForReason(subId, DATA_ENABLED_REASON_USER, enable); } catch (RuntimeException e) { - Log.e(TAG, "Error calling setDataEnabledWithReason e:" + e); + Log.e(TAG, "Error calling setDataEnabledForReason e:" + e); } } @@ -9461,9 +9461,9 @@ public class TelephonyManager { @SystemApi public boolean getDataEnabled(int subId) { try { - return isDataEnabledWithReason(DATA_ENABLED_REASON_USER); + return isDataEnabledForReason(DATA_ENABLED_REASON_USER); } catch (RuntimeException e) { - Log.e(TAG, "Error calling isDataEnabledWithReason e:" + e); + Log.e(TAG, "Error calling isDataEnabledForReason e:" + e); } return false; } @@ -11016,7 +11016,7 @@ public class TelephonyManager { * * @param enabled control enable or disable carrier data. * @see #resetAllCarrierActions() - * @deprecated use {@link #setDataEnabledWithReason(int, boolean) with + * @deprecated use {@link #setDataEnabledForReason(int, boolean) with * reason {@link #DATA_ENABLED_REASON_CARRIER}} instead. * @hide */ @@ -11025,9 +11025,9 @@ public class TelephonyManager { @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setCarrierDataEnabled(boolean enabled) { try { - setDataEnabledWithReason(DATA_ENABLED_REASON_CARRIER, enabled); + setDataEnabledForReason(DATA_ENABLED_REASON_CARRIER, enabled); } catch (RuntimeException e) { - Log.e(TAG, "Error calling setDataEnabledWithReason e:" + e); + Log.e(TAG, "Error calling setDataEnabledForReason e:" + e); } } @@ -11113,7 +11113,7 @@ public class TelephonyManager { /** * Policy control of data connection. Usually used when data limit is passed. * @param enabled True if enabling the data, otherwise disabling. - * @deprecated use {@link #setDataEnabledWithReason(int, boolean) with + * @deprecated use {@link #setDataEnabledForReason(int, boolean) with * reason {@link #DATA_ENABLED_REASON_POLICY}} instead. * @hide */ @@ -11121,9 +11121,9 @@ public class TelephonyManager { @RequiresPermission(Manifest.permission.MODIFY_PHONE_STATE) public void setPolicyDataEnabled(boolean enabled) { try { - setDataEnabledWithReason(DATA_ENABLED_REASON_POLICY, enabled); + setDataEnabledForReason(DATA_ENABLED_REASON_POLICY, enabled); } catch (RuntimeException e) { - Log.e(TAG, "Error calling setDataEnabledWithReason e:" + e); + Log.e(TAG, "Error calling setDataEnabledForReason e:" + e); } } @@ -11139,36 +11139,28 @@ public class TelephonyManager { /** * To indicate that user enabled or disabled data. - * @hide */ - @SystemApi public static final int DATA_ENABLED_REASON_USER = 0; /** * To indicate that data control due to policy. Usually used when data limit is passed. * Policy data on/off won't affect user settings but will bypass the * settings and turns off data internally if set to {@code false}. - * @hide */ - @SystemApi public static final int DATA_ENABLED_REASON_POLICY = 1; /** * To indicate enable or disable carrier data by the system based on carrier signalling or * carrier privileged apps. Carrier data on/off won't affect user settings but will bypass the * settings and turns off data internally if set to {@code false}. - * @hide */ - @SystemApi public static final int DATA_ENABLED_REASON_CARRIER = 2; /** * To indicate enable or disable data by thermal service. * Thermal data on/off won't affect user settings but will bypass the * settings and turns off data internally if set to {@code false}. - * @hide */ - @SystemApi public static final int DATA_ENABLED_REASON_THERMAL = 3; /** @@ -11197,25 +11189,23 @@ public class TelephonyManager { * has {@link android.Manifest.permission#MODIFY_PHONE_STATE MODIFY_PHONE_STATE} irrespective of * the reason. * @throws IllegalStateException if the Telephony process is not currently available. - * @hide */ @RequiresPermission(Manifest.permission.MODIFY_PHONE_STATE) - @SystemApi - public void setDataEnabledWithReason(@DataEnabledReason int reason, boolean enabled) { - setDataEnabledWithReason(getSubId(), reason, enabled); + public void setDataEnabledForReason(@DataEnabledReason int reason, boolean enabled) { + setDataEnabledForReason(getSubId(), reason, enabled); } - private void setDataEnabledWithReason(int subId, @DataEnabledReason int reason, + private void setDataEnabledForReason(int subId, @DataEnabledReason int reason, boolean enabled) { try { ITelephony service = getITelephony(); if (service != null) { - service.setDataEnabledWithReason(subId, reason, enabled); + service.setDataEnabledForReason(subId, reason, enabled); } else { throw new IllegalStateException("telephony service is null."); } } catch (RemoteException ex) { - Log.e(TAG, "Telephony#setDataEnabledWithReason RemoteException", ex); + Log.e(TAG, "Telephony#setDataEnabledForReason RemoteException", ex); ex.rethrowFromSystemServer(); } } @@ -11223,9 +11213,11 @@ public class TelephonyManager { /** * Return whether data is enabled for certain reason . * - * If {@link #isDataEnabledWithReason} returns false, it means in data enablement for a + * If {@link #isDataEnabledForReason} returns false, it means in data enablement for a * specific reason is turned off. If any of the reason is off, then it will result in - * bypassing user preference and result in data to be turned off. + * bypassing user preference and result in data to be turned off. Call + * {@link #isDataConnectionAllowed} in order to know whether + * data connection is allowed on the device. * *

If this object has been created with {@link #createForSubscriptionId}, applies * to the given subId. Otherwise, applies to @@ -11234,27 +11226,26 @@ public class TelephonyManager { * @param reason the reason the data enable change is taking place * @return whether data is enabled for a reason. *

Requires Permission: - * {@link android.Manifest.permission#READ_PHONE_STATE READ_PHONE_STATE} + * {@link android.Manifest.permission#READ_PHONE_STATE READ_PHONE_STATE} or + * {@link android.Manifest.permission#ACCESS_NETWORK_STATE} * @throws IllegalStateException if the Telephony process is not currently available. - * @hide */ @RequiresPermission(anyOf = {android.Manifest.permission.ACCESS_NETWORK_STATE, android.Manifest.permission.READ_PHONE_STATE}) - @SystemApi - public boolean isDataEnabledWithReason(@DataEnabledReason int reason) { - return isDataEnabledWithReason(getSubId(), reason); + public boolean isDataEnabledForReason(@DataEnabledReason int reason) { + return isDataEnabledForReason(getSubId(), reason); } - private boolean isDataEnabledWithReason(int subId, @DataEnabledReason int reason) { + private boolean isDataEnabledForReason(int subId, @DataEnabledReason int reason) { try { ITelephony service = getITelephony(); if (service != null) { - return service.isDataEnabledWithReason(subId, reason); + return service.isDataEnabledForReason(subId, reason); } else { throw new IllegalStateException("telephony service is null."); } } catch (RemoteException ex) { - Log.e(TAG, "Telephony#isDataEnabledWithReason RemoteException", ex); + Log.e(TAG, "Telephony#isDataEnabledForReason RemoteException", ex); ex.rethrowFromSystemServer(); } return false; @@ -11395,10 +11386,14 @@ public class TelephonyManager { *

  • And possibly others.
  • * * @return {@code true} if the overall data connection is allowed; {@code false} if not. - * @hide + *

    Requires Permission: + * {@link android.Manifest.permission#READ_PHONE_STATE READ_PHONE_STATE} or + * {@link android.Manifest.permission#ACCESS_NETWORK_STATE} or + * android.Manifest.permission#READ_PRIVILEGED_PHONE_STATE */ - @SystemApi - @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) + @RequiresPermission(anyOf = {android.Manifest.permission.ACCESS_NETWORK_STATE, + android.Manifest.permission.READ_PHONE_STATE, + android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE}) public boolean isDataConnectionAllowed() { boolean retVal = false; try { diff --git a/telephony/java/com/android/internal/telephony/ITelephony.aidl b/telephony/java/com/android/internal/telephony/ITelephony.aidl index e2de5c82940f4..4021d0a2888f9 100644 --- a/telephony/java/com/android/internal/telephony/ITelephony.aidl +++ b/telephony/java/com/android/internal/telephony/ITelephony.aidl @@ -1015,7 +1015,7 @@ interface ITelephony { * @param reason the reason the data enable change is taking place * @param enable true to turn on, else false */ - void setDataEnabledWithReason(int subId, int reason, boolean enable); + void setDataEnabledForReason(int subId, int reason, boolean enable); /** * Return whether data is enabled for certain reason @@ -1023,7 +1023,7 @@ interface ITelephony { * @param reason the reason the data enable change is taking place * @return true on enabled */ - boolean isDataEnabledWithReason(int subId, int reason); + boolean isDataEnabledForReason(int subId, int reason); /** * Checks if manual network selection is allowed.