diff options
| -rw-r--r-- | core/api/current.txt | 10 | ||||
| -rw-r--r-- | telephony/java/android/telephony/ServiceState.java | 57 |
2 files changed, 62 insertions, 5 deletions
diff --git a/core/api/current.txt b/core/api/current.txt index 34497d1b0159..4d1e280f798f 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -42734,16 +42734,16 @@ package android.telephony { ctor @Deprecated public ServiceState(android.os.Parcel); method protected void copyFrom(android.telephony.ServiceState); method public int describeContents(); - method public int getCdmaNetworkId(); - method public int getCdmaSystemId(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public int getCdmaNetworkId(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public int getCdmaSystemId(); method public int[] getCellBandwidths(); method public int getChannelNumber(); method public int getDuplexMode(); method public boolean getIsManualSelection(); method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoList(); - method public String getOperatorAlphaLong(); - method public String getOperatorAlphaShort(); - method public String getOperatorNumeric(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getOperatorAlphaLong(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getOperatorAlphaShort(); + method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getOperatorNumeric(); method public boolean getRoaming(); method public int getState(); method public boolean isSearching(); diff --git a/telephony/java/android/telephony/ServiceState.java b/telephony/java/android/telephony/ServiceState.java index 70da9b95410a..65f5632a7f05 100644 --- a/telephony/java/android/telephony/ServiceState.java +++ b/telephony/java/android/telephony/ServiceState.java @@ -19,6 +19,7 @@ package android.telephony; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.RequiresPermission; import android.annotation.SystemApi; import android.annotation.TestApi; import android.compat.annotation.UnsupportedAppUsage; @@ -767,6 +768,10 @@ public class ServiceState implements Parcelable { * * @return long name of operator, null if unregistered or unknown */ + @RequiresPermission(anyOf = { + android.Manifest.permission.ACCESS_FINE_LOCATION, + android.Manifest.permission.ACCESS_COARSE_LOCATION + }) public String getOperatorAlphaLong() { return mOperatorAlphaLong; } @@ -782,6 +787,10 @@ public class ServiceState implements Parcelable { * @return long name of operator * @hide */ + @RequiresPermission(anyOf = { + android.Manifest.permission.ACCESS_FINE_LOCATION, + android.Manifest.permission.ACCESS_COARSE_LOCATION + }) @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.Q, publicAlternatives = "Use {@link #getOperatorAlphaLong} instead.") public String getVoiceOperatorAlphaLong() { @@ -800,6 +809,10 @@ public class ServiceState implements Parcelable { * * @return short name of operator, null if unregistered or unknown */ + @RequiresPermission(anyOf = { + android.Manifest.permission.ACCESS_FINE_LOCATION, + android.Manifest.permission.ACCESS_COARSE_LOCATION + }) public String getOperatorAlphaShort() { return mOperatorAlphaShort; } @@ -815,6 +828,10 @@ public class ServiceState implements Parcelable { * @return short name of operator, null if unregistered or unknown * @hide */ + @RequiresPermission(anyOf = { + android.Manifest.permission.ACCESS_FINE_LOCATION, + android.Manifest.permission.ACCESS_COARSE_LOCATION + }) @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.Q, publicAlternatives = "Use {@link #getOperatorAlphaShort} instead.") public String getVoiceOperatorAlphaShort() { @@ -832,6 +849,10 @@ public class ServiceState implements Parcelable { * @return short name of operator, null if unregistered or unknown * @hide */ + @RequiresPermission(anyOf = { + android.Manifest.permission.ACCESS_FINE_LOCATION, + android.Manifest.permission.ACCESS_COARSE_LOCATION + }) @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.Q, publicAlternatives = "Use {@link #getOperatorAlphaShort} instead.") public String getDataOperatorAlphaShort() { @@ -853,6 +874,10 @@ public class ServiceState implements Parcelable { * @return name of operator, null if unregistered or unknown * @hide */ + @RequiresPermission(anyOf = { + android.Manifest.permission.ACCESS_FINE_LOCATION, + android.Manifest.permission.ACCESS_COARSE_LOCATION + }) public String getOperatorAlpha() { if (TextUtils.isEmpty(mOperatorAlphaLong)) { return mOperatorAlphaShort; @@ -878,6 +903,10 @@ public class ServiceState implements Parcelable { * The country code can be decoded using * {@link com.android.internal.telephony.MccTable#countryCodeForMcc(int)}. */ + @RequiresPermission(anyOf = { + android.Manifest.permission.ACCESS_FINE_LOCATION, + android.Manifest.permission.ACCESS_COARSE_LOCATION + }) public String getOperatorNumeric() { return mOperatorNumeric; } @@ -893,6 +922,10 @@ public class ServiceState implements Parcelable { * @return numeric format of operator, null if unregistered or unknown * @hide */ + @RequiresPermission(anyOf = { + android.Manifest.permission.ACCESS_FINE_LOCATION, + android.Manifest.permission.ACCESS_COARSE_LOCATION + }) @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P) public String getVoiceOperatorNumeric() { return mOperatorNumeric; @@ -909,6 +942,10 @@ public class ServiceState implements Parcelable { * @return numeric format of operator, null if unregistered or unknown * @hide */ + @RequiresPermission(anyOf = { + android.Manifest.permission.ACCESS_FINE_LOCATION, + android.Manifest.permission.ACCESS_COARSE_LOCATION + }) @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.Q, publicAlternatives = "Use {@link #getOperatorNumeric} instead.") public String getDataOperatorNumeric() { @@ -1747,8 +1784,17 @@ public class ServiceState implements Parcelable { /** * Get the CDMA NID (Network Identification Number), a number uniquely identifying a network * within a wireless system. (Defined in 3GPP2 C.S0023 3.4.8) + * + * <p>Require at least {@link android.Manifest.permission#ACCESS_FINE_LOCATION} or + * {@link android.Manifest.permission#ACCESS_COARSE_LOCATION}. Otherwise return + * {@link #UNKNOWN_ID}. + * * @return The CDMA NID or {@link #UNKNOWN_ID} if not available. */ + @RequiresPermission(anyOf = { + android.Manifest.permission.ACCESS_FINE_LOCATION, + android.Manifest.permission.ACCESS_COARSE_LOCATION + }) public int getCdmaNetworkId() { return this.mNetworkId; } @@ -1756,8 +1802,17 @@ public class ServiceState implements Parcelable { /** * Get the CDMA SID (System Identification Number), a number uniquely identifying a wireless * system. (Defined in 3GPP2 C.S0023 3.4.8) + * + * <p>Require at least {@link android.Manifest.permission#ACCESS_FINE_LOCATION} or + * {@link android.Manifest.permission#ACCESS_COARSE_LOCATION}. Otherwise return + * {@link #UNKNOWN_ID}. + * * @return The CDMA SID or {@link #UNKNOWN_ID} if not available. */ + @RequiresPermission(anyOf = { + android.Manifest.permission.ACCESS_FINE_LOCATION, + android.Manifest.permission.ACCESS_COARSE_LOCATION + }) public int getCdmaSystemId() { return this.mSystemId; } @@ -2058,6 +2113,8 @@ public class ServiceState implements Parcelable { state.mOperatorAlphaLong = null; state.mOperatorAlphaShort = null; state.mOperatorNumeric = null; + state.mSystemId = UNKNOWN_ID; + state.mNetworkId = UNKNOWN_ID; return state; } |