Loading api/system-current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -8582,6 +8582,7 @@ package android.telephony { } public class SubscriptionManager { method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean canDisablePhysicalSubscription(); method public java.util.List<android.telephony.SubscriptionInfo> getAvailableSubscriptionInfoList(); 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); telephony/java/android/telephony/SubscriptionManager.java +37 −1 Original line number Diff line number Diff line Loading @@ -3104,7 +3104,11 @@ public class SubscriptionManager { } /** * Enables or disables a subscription. This is currently used in the settings page. * Enables or disables a subscription. This is currently used in the settings page. It will * fail and return false if operation is not supported or failed. * * To disable an active subscription on a physical (non-Euicc) SIM, * {@link #canDisablePhysicalSubscription} needs to be true. * * <p> * Permissions android.Manifest.permission.MODIFY_PHONE_STATE is required Loading Loading @@ -3135,6 +3139,38 @@ public class SubscriptionManager { return false; } /** * Whether it's supported to disable / re-enable a subscription on a physical (non-euicc) SIM. * * Physical SIM refers non-euicc, or aka non-programmable SIM. * * It provides whether a physical SIM card can be disabled without taking it out, which is done * via {@link #setSubscriptionEnabled(int, boolean)} API. * * Requires Permission: READ_PRIVILEGED_PHONE_STATE. * * @return whether can disable subscriptions on physical SIMs. * * @hide */ @SystemApi @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean canDisablePhysicalSubscription() { if (VDBG) { logd("canDisablePhysicalSubscription"); } try { ISub iSub = ISub.Stub.asInterface(ServiceManager.getService("isub")); if (iSub != null) { return iSub.canDisablePhysicalSubscription(); } } catch (RemoteException ex) { // ignore it } return false; } /** * DO NOT USE. * This API is designed for features that are not finished at this point. Do not call this API. Loading telephony/java/com/android/internal/telephony/ISub.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -283,4 +283,6 @@ interface ISub { boolean setAlwaysAllowMmsData(int subId, boolean alwaysAllow); int getActiveDataSubscriptionId(); boolean canDisablePhysicalSubscription(); } Loading
api/system-current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -8582,6 +8582,7 @@ package android.telephony { } public class SubscriptionManager { method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean canDisablePhysicalSubscription(); method public java.util.List<android.telephony.SubscriptionInfo> getAvailableSubscriptionInfoList(); 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);
telephony/java/android/telephony/SubscriptionManager.java +37 −1 Original line number Diff line number Diff line Loading @@ -3104,7 +3104,11 @@ public class SubscriptionManager { } /** * Enables or disables a subscription. This is currently used in the settings page. * Enables or disables a subscription. This is currently used in the settings page. It will * fail and return false if operation is not supported or failed. * * To disable an active subscription on a physical (non-Euicc) SIM, * {@link #canDisablePhysicalSubscription} needs to be true. * * <p> * Permissions android.Manifest.permission.MODIFY_PHONE_STATE is required Loading Loading @@ -3135,6 +3139,38 @@ public class SubscriptionManager { return false; } /** * Whether it's supported to disable / re-enable a subscription on a physical (non-euicc) SIM. * * Physical SIM refers non-euicc, or aka non-programmable SIM. * * It provides whether a physical SIM card can be disabled without taking it out, which is done * via {@link #setSubscriptionEnabled(int, boolean)} API. * * Requires Permission: READ_PRIVILEGED_PHONE_STATE. * * @return whether can disable subscriptions on physical SIMs. * * @hide */ @SystemApi @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean canDisablePhysicalSubscription() { if (VDBG) { logd("canDisablePhysicalSubscription"); } try { ISub iSub = ISub.Stub.asInterface(ServiceManager.getService("isub")); if (iSub != null) { return iSub.canDisablePhysicalSubscription(); } } catch (RemoteException ex) { // ignore it } return false; } /** * DO NOT USE. * This API is designed for features that are not finished at this point. Do not call this API. Loading
telephony/java/com/android/internal/telephony/ISub.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -283,4 +283,6 @@ interface ISub { boolean setAlwaysAllowMmsData(int subId, boolean alwaysAllow); int getActiveDataSubscriptionId(); boolean canDisablePhysicalSubscription(); }