Merge "Protect SID and NID in ServiceState with coarse location permission" am: 7013bca07a
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1978547 Change-Id: I59b6531d71bdb5995f3402a1ea69d021a6a6d4d4
This commit is contained in:
@@ -41133,16 +41133,16 @@ package android.telephony {
|
|||||||
ctor @Deprecated public ServiceState(android.os.Parcel);
|
ctor @Deprecated public ServiceState(android.os.Parcel);
|
||||||
method protected void copyFrom(android.telephony.ServiceState);
|
method protected void copyFrom(android.telephony.ServiceState);
|
||||||
method public int describeContents();
|
method public int describeContents();
|
||||||
method public int getCdmaNetworkId();
|
method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public int getCdmaNetworkId();
|
||||||
method public int getCdmaSystemId();
|
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[] getCellBandwidths();
|
||||||
method public int getChannelNumber();
|
method public int getChannelNumber();
|
||||||
method public int getDuplexMode();
|
method public int getDuplexMode();
|
||||||
method public boolean getIsManualSelection();
|
method public boolean getIsManualSelection();
|
||||||
method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoList();
|
method @NonNull public java.util.List<android.telephony.NetworkRegistrationInfo> getNetworkRegistrationInfoList();
|
||||||
method public String getOperatorAlphaLong();
|
method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getOperatorAlphaLong();
|
||||||
method public String getOperatorAlphaShort();
|
method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getOperatorAlphaShort();
|
||||||
method public String getOperatorNumeric();
|
method @RequiresPermission(anyOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}) public String getOperatorNumeric();
|
||||||
method public boolean getRoaming();
|
method public boolean getRoaming();
|
||||||
method public int getState();
|
method public int getState();
|
||||||
method public boolean isSearching();
|
method public boolean isSearching();
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ package android.telephony;
|
|||||||
import android.annotation.IntDef;
|
import android.annotation.IntDef;
|
||||||
import android.annotation.NonNull;
|
import android.annotation.NonNull;
|
||||||
import android.annotation.Nullable;
|
import android.annotation.Nullable;
|
||||||
|
import android.annotation.RequiresPermission;
|
||||||
import android.annotation.SystemApi;
|
import android.annotation.SystemApi;
|
||||||
import android.annotation.TestApi;
|
import android.annotation.TestApi;
|
||||||
import android.compat.annotation.UnsupportedAppUsage;
|
import android.compat.annotation.UnsupportedAppUsage;
|
||||||
@@ -767,6 +768,10 @@ public class ServiceState implements Parcelable {
|
|||||||
*
|
*
|
||||||
* @return long name of operator, null if unregistered or unknown
|
* @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() {
|
public String getOperatorAlphaLong() {
|
||||||
return mOperatorAlphaLong;
|
return mOperatorAlphaLong;
|
||||||
}
|
}
|
||||||
@@ -782,6 +787,10 @@ public class ServiceState implements Parcelable {
|
|||||||
* @return long name of operator
|
* @return long name of operator
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
|
@RequiresPermission(anyOf = {
|
||||||
|
android.Manifest.permission.ACCESS_FINE_LOCATION,
|
||||||
|
android.Manifest.permission.ACCESS_COARSE_LOCATION
|
||||||
|
})
|
||||||
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.Q,
|
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.Q,
|
||||||
publicAlternatives = "Use {@link #getOperatorAlphaLong} instead.")
|
publicAlternatives = "Use {@link #getOperatorAlphaLong} instead.")
|
||||||
public String getVoiceOperatorAlphaLong() {
|
public String getVoiceOperatorAlphaLong() {
|
||||||
@@ -800,6 +809,10 @@ public class ServiceState implements Parcelable {
|
|||||||
*
|
*
|
||||||
* @return short name of operator, null if unregistered or unknown
|
* @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() {
|
public String getOperatorAlphaShort() {
|
||||||
return mOperatorAlphaShort;
|
return mOperatorAlphaShort;
|
||||||
}
|
}
|
||||||
@@ -815,6 +828,10 @@ public class ServiceState implements Parcelable {
|
|||||||
* @return short name of operator, null if unregistered or unknown
|
* @return short name of operator, null if unregistered or unknown
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
|
@RequiresPermission(anyOf = {
|
||||||
|
android.Manifest.permission.ACCESS_FINE_LOCATION,
|
||||||
|
android.Manifest.permission.ACCESS_COARSE_LOCATION
|
||||||
|
})
|
||||||
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.Q,
|
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.Q,
|
||||||
publicAlternatives = "Use {@link #getOperatorAlphaShort} instead.")
|
publicAlternatives = "Use {@link #getOperatorAlphaShort} instead.")
|
||||||
public String getVoiceOperatorAlphaShort() {
|
public String getVoiceOperatorAlphaShort() {
|
||||||
@@ -832,6 +849,10 @@ public class ServiceState implements Parcelable {
|
|||||||
* @return short name of operator, null if unregistered or unknown
|
* @return short name of operator, null if unregistered or unknown
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
|
@RequiresPermission(anyOf = {
|
||||||
|
android.Manifest.permission.ACCESS_FINE_LOCATION,
|
||||||
|
android.Manifest.permission.ACCESS_COARSE_LOCATION
|
||||||
|
})
|
||||||
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.Q,
|
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.Q,
|
||||||
publicAlternatives = "Use {@link #getOperatorAlphaShort} instead.")
|
publicAlternatives = "Use {@link #getOperatorAlphaShort} instead.")
|
||||||
public String getDataOperatorAlphaShort() {
|
public String getDataOperatorAlphaShort() {
|
||||||
@@ -853,6 +874,10 @@ public class ServiceState implements Parcelable {
|
|||||||
* @return name of operator, null if unregistered or unknown
|
* @return name of operator, null if unregistered or unknown
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
|
@RequiresPermission(anyOf = {
|
||||||
|
android.Manifest.permission.ACCESS_FINE_LOCATION,
|
||||||
|
android.Manifest.permission.ACCESS_COARSE_LOCATION
|
||||||
|
})
|
||||||
public String getOperatorAlpha() {
|
public String getOperatorAlpha() {
|
||||||
if (TextUtils.isEmpty(mOperatorAlphaLong)) {
|
if (TextUtils.isEmpty(mOperatorAlphaLong)) {
|
||||||
return mOperatorAlphaShort;
|
return mOperatorAlphaShort;
|
||||||
@@ -878,6 +903,10 @@ public class ServiceState implements Parcelable {
|
|||||||
* The country code can be decoded using
|
* The country code can be decoded using
|
||||||
* {@link com.android.internal.telephony.MccTable#countryCodeForMcc(int)}.
|
* {@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() {
|
public String getOperatorNumeric() {
|
||||||
return mOperatorNumeric;
|
return mOperatorNumeric;
|
||||||
}
|
}
|
||||||
@@ -893,6 +922,10 @@ public class ServiceState implements Parcelable {
|
|||||||
* @return numeric format of operator, null if unregistered or unknown
|
* @return numeric format of operator, null if unregistered or unknown
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
|
@RequiresPermission(anyOf = {
|
||||||
|
android.Manifest.permission.ACCESS_FINE_LOCATION,
|
||||||
|
android.Manifest.permission.ACCESS_COARSE_LOCATION
|
||||||
|
})
|
||||||
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P)
|
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P)
|
||||||
public String getVoiceOperatorNumeric() {
|
public String getVoiceOperatorNumeric() {
|
||||||
return mOperatorNumeric;
|
return mOperatorNumeric;
|
||||||
@@ -909,6 +942,10 @@ public class ServiceState implements Parcelable {
|
|||||||
* @return numeric format of operator, null if unregistered or unknown
|
* @return numeric format of operator, null if unregistered or unknown
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
|
@RequiresPermission(anyOf = {
|
||||||
|
android.Manifest.permission.ACCESS_FINE_LOCATION,
|
||||||
|
android.Manifest.permission.ACCESS_COARSE_LOCATION
|
||||||
|
})
|
||||||
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.Q,
|
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.Q,
|
||||||
publicAlternatives = "Use {@link #getOperatorNumeric} instead.")
|
publicAlternatives = "Use {@link #getOperatorNumeric} instead.")
|
||||||
public String getDataOperatorNumeric() {
|
public String getDataOperatorNumeric() {
|
||||||
@@ -1758,8 +1795,17 @@ public class ServiceState implements Parcelable {
|
|||||||
/**
|
/**
|
||||||
* Get the CDMA NID (Network Identification Number), a number uniquely identifying a network
|
* 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)
|
* 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.
|
* @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() {
|
public int getCdmaNetworkId() {
|
||||||
return this.mNetworkId;
|
return this.mNetworkId;
|
||||||
}
|
}
|
||||||
@@ -1767,8 +1813,17 @@ public class ServiceState implements Parcelable {
|
|||||||
/**
|
/**
|
||||||
* Get the CDMA SID (System Identification Number), a number uniquely identifying a wireless
|
* Get the CDMA SID (System Identification Number), a number uniquely identifying a wireless
|
||||||
* system. (Defined in 3GPP2 C.S0023 3.4.8)
|
* 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.
|
* @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() {
|
public int getCdmaSystemId() {
|
||||||
return this.mSystemId;
|
return this.mSystemId;
|
||||||
}
|
}
|
||||||
@@ -2069,6 +2124,8 @@ public class ServiceState implements Parcelable {
|
|||||||
state.mOperatorAlphaLong = null;
|
state.mOperatorAlphaLong = null;
|
||||||
state.mOperatorAlphaShort = null;
|
state.mOperatorAlphaShort = null;
|
||||||
state.mOperatorNumeric = null;
|
state.mOperatorNumeric = null;
|
||||||
|
state.mSystemId = UNKNOWN_ID;
|
||||||
|
state.mNetworkId = UNKNOWN_ID;
|
||||||
|
|
||||||
return state;
|
return state;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user