Loading api/system-current.txt +6 −0 Original line number Original line Diff line number Diff line Loading @@ -5392,6 +5392,7 @@ package android.telephony { public class SubscriptionInfo implements android.os.Parcelable { public class SubscriptionInfo implements android.os.Parcelable { method public java.util.List<android.telephony.UiccAccessRule> getAccessRules(); method public java.util.List<android.telephony.UiccAccessRule> getAccessRules(); method public int getCardId(); method public int getCardId(); method public int getProfileClass(); } } public class SubscriptionManager { public class SubscriptionManager { Loading @@ -5400,6 +5401,11 @@ package android.telephony { method public void setDefaultDataSubId(int); method public void setDefaultDataSubId(int); method public void setDefaultSmsSubId(int); method public void setDefaultSmsSubId(int); field public static final android.net.Uri ADVANCED_CALLING_ENABLED_CONTENT_URI; field public static final android.net.Uri ADVANCED_CALLING_ENABLED_CONTENT_URI; field public static final int PROFILE_CLASS_DEFAULT = -1; // 0xffffffff field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2 field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1 field public static final int PROFILE_CLASS_TESTING = 0; // 0x0 field public static final int PROFILE_CLASS_UNSET = -1; // 0xffffffff field public static final android.net.Uri VT_ENABLED_CONTENT_URI; field public static final android.net.Uri VT_ENABLED_CONTENT_URI; field public static final android.net.Uri WFC_ENABLED_CONTENT_URI; field public static final android.net.Uri WFC_ENABLED_CONTENT_URI; field public static final android.net.Uri WFC_MODE_CONTENT_URI; field public static final android.net.Uri WFC_MODE_CONTENT_URI; Loading telephony/java/android/telephony/SubscriptionInfo.java +33 −8 Original line number Original line Diff line number Diff line Loading @@ -173,6 +173,16 @@ public class SubscriptionInfo implements Parcelable { */ */ private boolean mIsGroupDisabled = false; private boolean mIsGroupDisabled = false; /** * Profile class, PROFILE_CLASS_TESTING, PROFILE_CLASS_OPERATIONAL * PROFILE_CLASS_PROVISIONING, or PROFILE_CLASS_UNSET. * A profile on the eUICC can be defined as test, operational, provisioning, or unset. * The profile class will be populated from the profile metadata if present. Otherwise, * the profile class defaults to unset if there is no profile metadata or the subscription * is not on an eUICC ({@link #isEmbedded} returns false). */ private int mProfileClass; /** /** * @hide * @hide */ */ Loading @@ -182,7 +192,8 @@ public class SubscriptionInfo implements Parcelable { @Nullable UiccAccessRule[] accessRules, String cardString) { @Nullable UiccAccessRule[] accessRules, String cardString) { this(id, iccId, simSlotIndex, displayName, carrierName, nameSource, iconTint, number, this(id, iccId, simSlotIndex, displayName, carrierName, nameSource, iconTint, number, roaming, icon, mcc, mnc, countryIso, isEmbedded, accessRules, cardString, roaming, icon, mcc, mnc, countryIso, isEmbedded, accessRules, cardString, false, null, true, TelephonyManager.UNKNOWN_CARRIER_ID); false, null, true, TelephonyManager.UNKNOWN_CARRIER_ID, SubscriptionManager.PROFILE_CLASS_DEFAULT); } } /** /** Loading @@ -192,10 +203,10 @@ public class SubscriptionInfo implements Parcelable { CharSequence carrierName, int nameSource, int iconTint, String number, int roaming, CharSequence carrierName, int nameSource, int iconTint, String number, int roaming, Bitmap icon, String mcc, String mnc, String countryIso, boolean isEmbedded, Bitmap icon, String mcc, String mnc, String countryIso, boolean isEmbedded, @Nullable UiccAccessRule[] accessRules, String cardString, boolean isOpportunistic, @Nullable UiccAccessRule[] accessRules, String cardString, boolean isOpportunistic, @Nullable String groupUUID, boolean isMetered, int carrierId) { @Nullable String groupUUID, boolean isMetered, int carrierId, int profileClass) { this(id, iccId, simSlotIndex, displayName, carrierName, nameSource, iconTint, number, this(id, iccId, simSlotIndex, displayName, carrierName, nameSource, iconTint, number, roaming, icon, mcc, mnc, countryIso, isEmbedded, accessRules, cardString, -1, roaming, icon, mcc, mnc, countryIso, isEmbedded, accessRules, cardString, -1, isOpportunistic, groupUUID, isMetered, false, carrierId); isOpportunistic, groupUUID, isMetered, false, carrierId, profileClass); } } /** /** Loading @@ -206,7 +217,7 @@ public class SubscriptionInfo implements Parcelable { Bitmap icon, String mcc, String mnc, String countryIso, boolean isEmbedded, Bitmap icon, String mcc, String mnc, String countryIso, boolean isEmbedded, @Nullable UiccAccessRule[] accessRules, String cardString, int cardId, @Nullable UiccAccessRule[] accessRules, String cardString, int cardId, boolean isOpportunistic, @Nullable String groupUUID, boolean isMetered, boolean isOpportunistic, @Nullable String groupUUID, boolean isMetered, boolean isGroupDisabled, int carrierid) { boolean isGroupDisabled, int carrierid, int profileClass) { this.mId = id; this.mId = id; this.mIccId = iccId; this.mIccId = iccId; this.mSimSlotIndex = simSlotIndex; this.mSimSlotIndex = simSlotIndex; Loading @@ -229,6 +240,7 @@ public class SubscriptionInfo implements Parcelable { this.mIsMetered = isMetered; this.mIsMetered = isMetered; this.mIsGroupDisabled = isGroupDisabled; this.mIsGroupDisabled = isGroupDisabled; this.mCarrierId = carrierid; this.mCarrierId = carrierid; this.mProfileClass = profileClass; } } Loading Loading @@ -465,6 +477,15 @@ public class SubscriptionInfo implements Parcelable { return mIsMetered; return mIsMetered; } } /** * @return the profile class of this subscription. * @hide */ @SystemApi public @SubscriptionManager.ProfileClass int getProfileClass() { return this.mProfileClass; } /** /** * Checks whether the app with the given context is authorized to manage this subscription * Checks whether the app with the given context is authorized to manage this subscription * according to its metadata. Only supported for embedded subscriptions (if {@link #isEmbedded} * according to its metadata. Only supported for embedded subscriptions (if {@link #isEmbedded} Loading Loading @@ -589,11 +610,12 @@ public class SubscriptionInfo implements Parcelable { boolean isMetered = source.readBoolean(); boolean isMetered = source.readBoolean(); boolean isGroupDisabled = source.readBoolean(); boolean isGroupDisabled = source.readBoolean(); int carrierid = source.readInt(); int carrierid = source.readInt(); int profileClass = source.readInt(); return new SubscriptionInfo(id, iccId, simSlotIndex, displayName, carrierName, return new SubscriptionInfo(id, iccId, simSlotIndex, displayName, carrierName, nameSource, iconTint, number, dataRoaming, iconBitmap, mcc, mnc, countryIso, nameSource, iconTint, number, dataRoaming, iconBitmap, mcc, mnc, countryIso, isEmbedded, accessRules, cardString, cardId, isOpportunistic, groupUUID, isEmbedded, accessRules, cardString, cardId, isOpportunistic, groupUUID, isMetered, isGroupDisabled, carrierid); isMetered, isGroupDisabled, carrierid, profileClass); } } @Override @Override Loading Loading @@ -626,6 +648,7 @@ public class SubscriptionInfo implements Parcelable { dest.writeBoolean(mIsMetered); dest.writeBoolean(mIsMetered); dest.writeBoolean(mIsGroupDisabled); dest.writeBoolean(mIsGroupDisabled); dest.writeInt(mCarrierId); dest.writeInt(mCarrierId); dest.writeInt(mProfileClass); } } @Override @Override Loading Loading @@ -661,7 +684,8 @@ public class SubscriptionInfo implements Parcelable { + " accessRules " + Arrays.toString(mAccessRules) + " accessRules " + Arrays.toString(mAccessRules) + " cardString=" + cardStringToPrint + " cardId=" + mCardId + " cardString=" + cardStringToPrint + " cardId=" + mCardId + " isOpportunistic " + mIsOpportunistic + " mGroupUUID=" + mGroupUUID + " isOpportunistic " + mIsOpportunistic + " mGroupUUID=" + mGroupUUID + " isMetered=" + mIsMetered + " mIsGroupDisabled=" + mIsGroupDisabled + "}"; + " isMetered=" + mIsMetered + " mIsGroupDisabled=" + mIsGroupDisabled + " profileClass=" + mProfileClass + "}"; } } @Override @Override Loading @@ -669,7 +693,7 @@ public class SubscriptionInfo implements Parcelable { return Objects.hash(mId, mSimSlotIndex, mNameSource, mIconTint, mDataRoaming, mIsEmbedded, return Objects.hash(mId, mSimSlotIndex, mNameSource, mIconTint, mDataRoaming, mIsEmbedded, mIsOpportunistic, mGroupUUID, mIsMetered, mIccId, mNumber, mMcc, mMnc, mIsOpportunistic, mGroupUUID, mIsMetered, mIccId, mNumber, mMcc, mMnc, mCountryIso, mCardString, mCardId, mDisplayName, mCarrierName, mAccessRules, mCountryIso, mCardString, mCardId, mDisplayName, mCarrierName, mAccessRules, mIsGroupDisabled, mCarrierId); mIsGroupDisabled, mCarrierId, mProfileClass); } } @Override @Override Loading Loading @@ -704,6 +728,7 @@ public class SubscriptionInfo implements Parcelable { && Objects.equals(mCardId, toCompare.mCardId) && Objects.equals(mCardId, toCompare.mCardId) && TextUtils.equals(mDisplayName, toCompare.mDisplayName) && TextUtils.equals(mDisplayName, toCompare.mDisplayName) && TextUtils.equals(mCarrierName, toCompare.mCarrierName) && TextUtils.equals(mCarrierName, toCompare.mCarrierName) && Arrays.equals(mAccessRules, toCompare.mAccessRules); && Arrays.equals(mAccessRules, toCompare.mAccessRules) && mProfileClass == toCompare.mProfileClass; } } } } telephony/java/android/telephony/SubscriptionManager.java +69 −0 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,7 @@ import static android.net.NetworkPolicyManager.OVERRIDE_UNMETERED; import android.Manifest; import android.Manifest; import android.annotation.CallbackExecutor; import android.annotation.CallbackExecutor; import android.annotation.DurationMillisLong; import android.annotation.DurationMillisLong; 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.RequiresPermission; Loading Loading @@ -62,6 +63,8 @@ import com.android.internal.telephony.ISub; import com.android.internal.telephony.ITelephonyRegistry; import com.android.internal.telephony.ITelephonyRegistry; import com.android.internal.telephony.PhoneConstants; import com.android.internal.telephony.PhoneConstants; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.ArrayList; import java.util.Arrays; import java.util.Arrays; import java.util.Collections; import java.util.Collections; Loading Loading @@ -602,6 +605,72 @@ public class SubscriptionManager { */ */ public static final String IS_METERED = "is_metered"; public static final String IS_METERED = "is_metered"; /** * TelephonyProvider column name for the profile class of a subscription * Only present if {@link #IS_EMBEDDED} is 1. * <P>Type: INTEGER (int)</P> * @hide */ public static final String PROFILE_CLASS = "profile_class"; /** * Profile class of the subscription * @hide */ @Retention(RetentionPolicy.SOURCE) @IntDef(prefix = { "PROFILE_CLASS_" }, value = { PROFILE_CLASS_TESTING, PROFILE_CLASS_PROVISIONING, PROFILE_CLASS_OPERATIONAL, PROFILE_CLASS_UNSET, PROFILE_CLASS_DEFAULT }) public @interface ProfileClass {} /** * A testing profile can be pre-loaded or downloaded onto * the eUICC and provides connectivity to test equipment * for the purpose of testing the device and the eUICC. It * is not intended to store any operator credentials. * @hide */ @SystemApi public static final int PROFILE_CLASS_TESTING = 0; /** * A provisioning profile is pre-loaded onto the eUICC and * provides connectivity to a mobile network solely for the * purpose of provisioning profiles. * @hide */ @SystemApi public static final int PROFILE_CLASS_PROVISIONING = 1; /** * An operational profile can be pre-loaded or downloaded * onto the eUICC and provides services provided by the * operator. * @hide */ @SystemApi public static final int PROFILE_CLASS_OPERATIONAL = 2; /** * The profile class is unset. This occurs when profile class * info is not available. The subscription either has no profile * metadata or the profile metadata did not encode profile class. * @hide */ @SystemApi public static final int PROFILE_CLASS_UNSET = -1; /** * Default profile class * @hide */ @SystemApi public static final int PROFILE_CLASS_DEFAULT = PROFILE_CLASS_UNSET; /** /** * Broadcast Action: The user has changed one of the default subs related to * Broadcast Action: The user has changed one of the default subs related to * data, phone calls, or sms</p> * data, phone calls, or sms</p> Loading Loading
api/system-current.txt +6 −0 Original line number Original line Diff line number Diff line Loading @@ -5392,6 +5392,7 @@ package android.telephony { public class SubscriptionInfo implements android.os.Parcelable { public class SubscriptionInfo implements android.os.Parcelable { method public java.util.List<android.telephony.UiccAccessRule> getAccessRules(); method public java.util.List<android.telephony.UiccAccessRule> getAccessRules(); method public int getCardId(); method public int getCardId(); method public int getProfileClass(); } } public class SubscriptionManager { public class SubscriptionManager { Loading @@ -5400,6 +5401,11 @@ package android.telephony { method public void setDefaultDataSubId(int); method public void setDefaultDataSubId(int); method public void setDefaultSmsSubId(int); method public void setDefaultSmsSubId(int); field public static final android.net.Uri ADVANCED_CALLING_ENABLED_CONTENT_URI; field public static final android.net.Uri ADVANCED_CALLING_ENABLED_CONTENT_URI; field public static final int PROFILE_CLASS_DEFAULT = -1; // 0xffffffff field public static final int PROFILE_CLASS_OPERATIONAL = 2; // 0x2 field public static final int PROFILE_CLASS_PROVISIONING = 1; // 0x1 field public static final int PROFILE_CLASS_TESTING = 0; // 0x0 field public static final int PROFILE_CLASS_UNSET = -1; // 0xffffffff field public static final android.net.Uri VT_ENABLED_CONTENT_URI; field public static final android.net.Uri VT_ENABLED_CONTENT_URI; field public static final android.net.Uri WFC_ENABLED_CONTENT_URI; field public static final android.net.Uri WFC_ENABLED_CONTENT_URI; field public static final android.net.Uri WFC_MODE_CONTENT_URI; field public static final android.net.Uri WFC_MODE_CONTENT_URI; Loading
telephony/java/android/telephony/SubscriptionInfo.java +33 −8 Original line number Original line Diff line number Diff line Loading @@ -173,6 +173,16 @@ public class SubscriptionInfo implements Parcelable { */ */ private boolean mIsGroupDisabled = false; private boolean mIsGroupDisabled = false; /** * Profile class, PROFILE_CLASS_TESTING, PROFILE_CLASS_OPERATIONAL * PROFILE_CLASS_PROVISIONING, or PROFILE_CLASS_UNSET. * A profile on the eUICC can be defined as test, operational, provisioning, or unset. * The profile class will be populated from the profile metadata if present. Otherwise, * the profile class defaults to unset if there is no profile metadata or the subscription * is not on an eUICC ({@link #isEmbedded} returns false). */ private int mProfileClass; /** /** * @hide * @hide */ */ Loading @@ -182,7 +192,8 @@ public class SubscriptionInfo implements Parcelable { @Nullable UiccAccessRule[] accessRules, String cardString) { @Nullable UiccAccessRule[] accessRules, String cardString) { this(id, iccId, simSlotIndex, displayName, carrierName, nameSource, iconTint, number, this(id, iccId, simSlotIndex, displayName, carrierName, nameSource, iconTint, number, roaming, icon, mcc, mnc, countryIso, isEmbedded, accessRules, cardString, roaming, icon, mcc, mnc, countryIso, isEmbedded, accessRules, cardString, false, null, true, TelephonyManager.UNKNOWN_CARRIER_ID); false, null, true, TelephonyManager.UNKNOWN_CARRIER_ID, SubscriptionManager.PROFILE_CLASS_DEFAULT); } } /** /** Loading @@ -192,10 +203,10 @@ public class SubscriptionInfo implements Parcelable { CharSequence carrierName, int nameSource, int iconTint, String number, int roaming, CharSequence carrierName, int nameSource, int iconTint, String number, int roaming, Bitmap icon, String mcc, String mnc, String countryIso, boolean isEmbedded, Bitmap icon, String mcc, String mnc, String countryIso, boolean isEmbedded, @Nullable UiccAccessRule[] accessRules, String cardString, boolean isOpportunistic, @Nullable UiccAccessRule[] accessRules, String cardString, boolean isOpportunistic, @Nullable String groupUUID, boolean isMetered, int carrierId) { @Nullable String groupUUID, boolean isMetered, int carrierId, int profileClass) { this(id, iccId, simSlotIndex, displayName, carrierName, nameSource, iconTint, number, this(id, iccId, simSlotIndex, displayName, carrierName, nameSource, iconTint, number, roaming, icon, mcc, mnc, countryIso, isEmbedded, accessRules, cardString, -1, roaming, icon, mcc, mnc, countryIso, isEmbedded, accessRules, cardString, -1, isOpportunistic, groupUUID, isMetered, false, carrierId); isOpportunistic, groupUUID, isMetered, false, carrierId, profileClass); } } /** /** Loading @@ -206,7 +217,7 @@ public class SubscriptionInfo implements Parcelable { Bitmap icon, String mcc, String mnc, String countryIso, boolean isEmbedded, Bitmap icon, String mcc, String mnc, String countryIso, boolean isEmbedded, @Nullable UiccAccessRule[] accessRules, String cardString, int cardId, @Nullable UiccAccessRule[] accessRules, String cardString, int cardId, boolean isOpportunistic, @Nullable String groupUUID, boolean isMetered, boolean isOpportunistic, @Nullable String groupUUID, boolean isMetered, boolean isGroupDisabled, int carrierid) { boolean isGroupDisabled, int carrierid, int profileClass) { this.mId = id; this.mId = id; this.mIccId = iccId; this.mIccId = iccId; this.mSimSlotIndex = simSlotIndex; this.mSimSlotIndex = simSlotIndex; Loading @@ -229,6 +240,7 @@ public class SubscriptionInfo implements Parcelable { this.mIsMetered = isMetered; this.mIsMetered = isMetered; this.mIsGroupDisabled = isGroupDisabled; this.mIsGroupDisabled = isGroupDisabled; this.mCarrierId = carrierid; this.mCarrierId = carrierid; this.mProfileClass = profileClass; } } Loading Loading @@ -465,6 +477,15 @@ public class SubscriptionInfo implements Parcelable { return mIsMetered; return mIsMetered; } } /** * @return the profile class of this subscription. * @hide */ @SystemApi public @SubscriptionManager.ProfileClass int getProfileClass() { return this.mProfileClass; } /** /** * Checks whether the app with the given context is authorized to manage this subscription * Checks whether the app with the given context is authorized to manage this subscription * according to its metadata. Only supported for embedded subscriptions (if {@link #isEmbedded} * according to its metadata. Only supported for embedded subscriptions (if {@link #isEmbedded} Loading Loading @@ -589,11 +610,12 @@ public class SubscriptionInfo implements Parcelable { boolean isMetered = source.readBoolean(); boolean isMetered = source.readBoolean(); boolean isGroupDisabled = source.readBoolean(); boolean isGroupDisabled = source.readBoolean(); int carrierid = source.readInt(); int carrierid = source.readInt(); int profileClass = source.readInt(); return new SubscriptionInfo(id, iccId, simSlotIndex, displayName, carrierName, return new SubscriptionInfo(id, iccId, simSlotIndex, displayName, carrierName, nameSource, iconTint, number, dataRoaming, iconBitmap, mcc, mnc, countryIso, nameSource, iconTint, number, dataRoaming, iconBitmap, mcc, mnc, countryIso, isEmbedded, accessRules, cardString, cardId, isOpportunistic, groupUUID, isEmbedded, accessRules, cardString, cardId, isOpportunistic, groupUUID, isMetered, isGroupDisabled, carrierid); isMetered, isGroupDisabled, carrierid, profileClass); } } @Override @Override Loading Loading @@ -626,6 +648,7 @@ public class SubscriptionInfo implements Parcelable { dest.writeBoolean(mIsMetered); dest.writeBoolean(mIsMetered); dest.writeBoolean(mIsGroupDisabled); dest.writeBoolean(mIsGroupDisabled); dest.writeInt(mCarrierId); dest.writeInt(mCarrierId); dest.writeInt(mProfileClass); } } @Override @Override Loading Loading @@ -661,7 +684,8 @@ public class SubscriptionInfo implements Parcelable { + " accessRules " + Arrays.toString(mAccessRules) + " accessRules " + Arrays.toString(mAccessRules) + " cardString=" + cardStringToPrint + " cardId=" + mCardId + " cardString=" + cardStringToPrint + " cardId=" + mCardId + " isOpportunistic " + mIsOpportunistic + " mGroupUUID=" + mGroupUUID + " isOpportunistic " + mIsOpportunistic + " mGroupUUID=" + mGroupUUID + " isMetered=" + mIsMetered + " mIsGroupDisabled=" + mIsGroupDisabled + "}"; + " isMetered=" + mIsMetered + " mIsGroupDisabled=" + mIsGroupDisabled + " profileClass=" + mProfileClass + "}"; } } @Override @Override Loading @@ -669,7 +693,7 @@ public class SubscriptionInfo implements Parcelable { return Objects.hash(mId, mSimSlotIndex, mNameSource, mIconTint, mDataRoaming, mIsEmbedded, return Objects.hash(mId, mSimSlotIndex, mNameSource, mIconTint, mDataRoaming, mIsEmbedded, mIsOpportunistic, mGroupUUID, mIsMetered, mIccId, mNumber, mMcc, mMnc, mIsOpportunistic, mGroupUUID, mIsMetered, mIccId, mNumber, mMcc, mMnc, mCountryIso, mCardString, mCardId, mDisplayName, mCarrierName, mAccessRules, mCountryIso, mCardString, mCardId, mDisplayName, mCarrierName, mAccessRules, mIsGroupDisabled, mCarrierId); mIsGroupDisabled, mCarrierId, mProfileClass); } } @Override @Override Loading Loading @@ -704,6 +728,7 @@ public class SubscriptionInfo implements Parcelable { && Objects.equals(mCardId, toCompare.mCardId) && Objects.equals(mCardId, toCompare.mCardId) && TextUtils.equals(mDisplayName, toCompare.mDisplayName) && TextUtils.equals(mDisplayName, toCompare.mDisplayName) && TextUtils.equals(mCarrierName, toCompare.mCarrierName) && TextUtils.equals(mCarrierName, toCompare.mCarrierName) && Arrays.equals(mAccessRules, toCompare.mAccessRules); && Arrays.equals(mAccessRules, toCompare.mAccessRules) && mProfileClass == toCompare.mProfileClass; } } } }
telephony/java/android/telephony/SubscriptionManager.java +69 −0 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,7 @@ import static android.net.NetworkPolicyManager.OVERRIDE_UNMETERED; import android.Manifest; import android.Manifest; import android.annotation.CallbackExecutor; import android.annotation.CallbackExecutor; import android.annotation.DurationMillisLong; import android.annotation.DurationMillisLong; 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.RequiresPermission; Loading Loading @@ -62,6 +63,8 @@ import com.android.internal.telephony.ISub; import com.android.internal.telephony.ITelephonyRegistry; import com.android.internal.telephony.ITelephonyRegistry; import com.android.internal.telephony.PhoneConstants; import com.android.internal.telephony.PhoneConstants; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.ArrayList; import java.util.Arrays; import java.util.Arrays; import java.util.Collections; import java.util.Collections; Loading Loading @@ -602,6 +605,72 @@ public class SubscriptionManager { */ */ public static final String IS_METERED = "is_metered"; public static final String IS_METERED = "is_metered"; /** * TelephonyProvider column name for the profile class of a subscription * Only present if {@link #IS_EMBEDDED} is 1. * <P>Type: INTEGER (int)</P> * @hide */ public static final String PROFILE_CLASS = "profile_class"; /** * Profile class of the subscription * @hide */ @Retention(RetentionPolicy.SOURCE) @IntDef(prefix = { "PROFILE_CLASS_" }, value = { PROFILE_CLASS_TESTING, PROFILE_CLASS_PROVISIONING, PROFILE_CLASS_OPERATIONAL, PROFILE_CLASS_UNSET, PROFILE_CLASS_DEFAULT }) public @interface ProfileClass {} /** * A testing profile can be pre-loaded or downloaded onto * the eUICC and provides connectivity to test equipment * for the purpose of testing the device and the eUICC. It * is not intended to store any operator credentials. * @hide */ @SystemApi public static final int PROFILE_CLASS_TESTING = 0; /** * A provisioning profile is pre-loaded onto the eUICC and * provides connectivity to a mobile network solely for the * purpose of provisioning profiles. * @hide */ @SystemApi public static final int PROFILE_CLASS_PROVISIONING = 1; /** * An operational profile can be pre-loaded or downloaded * onto the eUICC and provides services provided by the * operator. * @hide */ @SystemApi public static final int PROFILE_CLASS_OPERATIONAL = 2; /** * The profile class is unset. This occurs when profile class * info is not available. The subscription either has no profile * metadata or the profile metadata did not encode profile class. * @hide */ @SystemApi public static final int PROFILE_CLASS_UNSET = -1; /** * Default profile class * @hide */ @SystemApi public static final int PROFILE_CLASS_DEFAULT = PROFILE_CLASS_UNSET; /** /** * Broadcast Action: The user has changed one of the default subs related to * Broadcast Action: The user has changed one of the default subs related to * data, phone calls, or sms</p> * data, phone calls, or sms</p> Loading