summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Wang <tpwang@google.com>2020-03-16 04:45:23 -0700
committerPeter Wang <tpwang@google.com>2020-03-18 20:35:44 -0700
commitceba2adbbdbdd40ae8a9d9e9784cf1cb484342e9 (patch)
tree71e66270ea850892a6a4da0d9da138881f3f1807
parent7695663db7424a834e49906e4167fe4198c3c781 (diff)
[Telephony Mainline] Rename getActiveAndHiddenSubscriptionIdList and
guard with permission Bug: 150878235 Fix: 150878235 Test: Build Change-Id: I7f3b1f5170e032336d9b39b322c49e2b92573586
-rwxr-xr-xapi/system-current.txt4
-rw-r--r--services/core/java/com/android/server/TelephonyRegistry.java2
-rw-r--r--telephony/api/system-current.txt4
-rw-r--r--telephony/common/com/android/internal/telephony/TelephonyPermissions.java2
-rw-r--r--telephony/java/android/telephony/SubscriptionManager.java4
5 files changed, 9 insertions, 7 deletions
diff --git a/api/system-current.txt b/api/system-current.txt
index f4e2a936f603..49a2011dfd68 100755
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -11374,10 +11374,10 @@ package android.telephony {
public class SubscriptionManager {
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean canDisablePhysicalSubscription();
method public boolean canManageSubscription(@NonNull android.telephony.SubscriptionInfo, @NonNull String);
- method @NonNull public int[] getActiveAndHiddenSubscriptionIdList();
- method @NonNull public int[] getActiveSubscriptionIdList();
+ method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int[] getActiveSubscriptionIdList();
method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.SubscriptionInfo getActiveSubscriptionInfoForIcc(@NonNull String);
method public java.util.List<android.telephony.SubscriptionInfo> getAvailableSubscriptionInfoList();
+ method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int[] getCompleteActiveSubscriptionIdList();
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getEnabledSubscriptionId(int);
method @NonNull public static android.content.res.Resources getResourcesForSubId(@NonNull android.content.Context, int);
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isSubscriptionEnabled(int);
diff --git a/services/core/java/com/android/server/TelephonyRegistry.java b/services/core/java/com/android/server/TelephonyRegistry.java
index 7dedad7f2fea..80915f5f6975 100644
--- a/services/core/java/com/android/server/TelephonyRegistry.java
+++ b/services/core/java/com/android/server/TelephonyRegistry.java
@@ -1393,7 +1393,7 @@ public class TelephonyRegistry extends ITelephonyRegistry.Stub {
public void notifyCarrierNetworkChange(boolean active) {
// only CarrierService with carrier privilege rule should have the permission
int[] subIds = Arrays.stream(SubscriptionManager.from(mContext)
- .getActiveAndHiddenSubscriptionIdList())
+ .getCompleteActiveSubscriptionIdList())
.filter(i -> TelephonyPermissions.checkCarrierPrivilegeForSubId(mContext,
i)).toArray();
if (ArrayUtils.isEmpty(subIds)) {
diff --git a/telephony/api/system-current.txt b/telephony/api/system-current.txt
index a49d3d539a7a..159474302920 100644
--- a/telephony/api/system-current.txt
+++ b/telephony/api/system-current.txt
@@ -691,10 +691,10 @@ package android.telephony {
public class SubscriptionManager {
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean canDisablePhysicalSubscription();
method public boolean canManageSubscription(@NonNull android.telephony.SubscriptionInfo, @NonNull String);
- method @NonNull public int[] getActiveAndHiddenSubscriptionIdList();
- method @NonNull public int[] getActiveSubscriptionIdList();
+ method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int[] getActiveSubscriptionIdList();
method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public android.telephony.SubscriptionInfo getActiveSubscriptionInfoForIcc(@NonNull String);
method public java.util.List<android.telephony.SubscriptionInfo> getAvailableSubscriptionInfoList();
+ method @NonNull @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int[] getCompleteActiveSubscriptionIdList();
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public int getEnabledSubscriptionId(int);
method @NonNull public static android.content.res.Resources getResourcesForSubId(@NonNull android.content.Context, int);
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isSubscriptionEnabled(int);
diff --git a/telephony/common/com/android/internal/telephony/TelephonyPermissions.java b/telephony/common/com/android/internal/telephony/TelephonyPermissions.java
index f0f9721744dd..68b17688c22e 100644
--- a/telephony/common/com/android/internal/telephony/TelephonyPermissions.java
+++ b/telephony/common/com/android/internal/telephony/TelephonyPermissions.java
@@ -616,7 +616,7 @@ public final class TelephonyPermissions {
private static boolean checkCarrierPrivilegeForAnySubId(Context context, int uid) {
SubscriptionManager sm = (SubscriptionManager) context.getSystemService(
Context.TELEPHONY_SUBSCRIPTION_SERVICE);
- int[] activeSubIds = sm.getActiveAndHiddenSubscriptionIdList();
+ int[] activeSubIds = sm.getCompleteActiveSubscriptionIdList();
for (int activeSubId : activeSubIds) {
if (getCarrierPrivilegeStatus(context, activeSubId, uid)
== TelephonyManager.CARRIER_PRIVILEGE_STATUS_HAS_ACCESS) {
diff --git a/telephony/java/android/telephony/SubscriptionManager.java b/telephony/java/android/telephony/SubscriptionManager.java
index 01a40f55e29f..9cf85313adde 100644
--- a/telephony/java/android/telephony/SubscriptionManager.java
+++ b/telephony/java/android/telephony/SubscriptionManager.java
@@ -2154,6 +2154,7 @@ public class SubscriptionManager {
* @hide
*/
@SystemApi
+ @RequiresPermission(Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
public @NonNull int[] getActiveSubscriptionIdList() {
return getActiveSubscriptionIdList(/* visibleOnly */ true);
}
@@ -2171,7 +2172,8 @@ public class SubscriptionManager {
* @hide
*/
@SystemApi
- public @NonNull int[] getActiveAndHiddenSubscriptionIdList() {
+ @RequiresPermission(Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
+ public @NonNull int[] getCompleteActiveSubscriptionIdList() {
return getActiveSubscriptionIdList(/* visibleOnly */false);
}