diff --git a/core/java/android/provider/Telephony.java b/core/java/android/provider/Telephony.java index 2c66910529f1a..718f2de33d5cb 100644 --- a/core/java/android/provider/Telephony.java +++ b/core/java/android/provider/Telephony.java @@ -3954,15 +3954,22 @@ public final class Telephony { public static final String APN_SET_ID = "apn_set_id"; /** - * Possible value for the {@link #APN_SET_ID} field. By default APNs will not belong to a - * set. If the user manually selects an APN without apn set id, there is no need to - * prioritize any specific APN set ids. + * Possible value for the {@link #APN_SET_ID} field. By default APNs are added to set 0. *

Type: INTEGER

* @hide */ @SystemApi public static final int NO_APN_SET_ID = 0; + /** + * Possible value for the {@link #APN_SET_ID} field. + * APNs with MATCH_ALL_APN_SET_ID will be used regardless of any set ids of + * the selected APN. + *

Type: INTEGER

+ * @hide + */ + public static final int MATCH_ALL_APN_SET_ID = -1; + /** * A unique carrier id associated with this APN * {@see TelephonyManager#getSimCarrierId()} diff --git a/telephony/java/android/telephony/CarrierConfigManager.java b/telephony/java/android/telephony/CarrierConfigManager.java index 06f4c2a66002b..2795f939d230c 100755 --- a/telephony/java/android/telephony/CarrierConfigManager.java +++ b/telephony/java/android/telephony/CarrierConfigManager.java @@ -3877,10 +3877,23 @@ public class CarrierConfigManager { * Indicating whether DUN APN should be disabled when the device is roaming. In that case, * the default APN (i.e. internet) will be used for tethering. * + * This config is only available when using Preset APN(not user edited) as Preferred APN. + * * @hide */ - public static final String KEY_DISABLE_DUN_APN_WHILE_ROAMING = - "disable_dun_apn_while_roaming"; + public static final String KEY_DISABLE_DUN_APN_WHILE_ROAMING_WITH_PRESET_APN_BOOL = + "disable_dun_apn_while_roaming_with_preset_apn_bool"; + + /** + * Where there is no preferred APN, specifies the carrier's default preferred APN. + * Specifies the {@link android.provider.Telephony.Carriers.APN} of the default preferred apn. + * + * This config is only available with Preset APN(not user edited). + * + * @hide + */ + public static final String KEY_DEFAULT_PREFERRED_APN_NAME_STRING = + "default_preferred_apn_name_string"; /** The default value for every variable. */ private final static PersistableBundle sDefaults; @@ -4417,7 +4430,8 @@ public class CarrierConfigManager { "ims:2", "cbs:2", "ia:2", "emergency:2", "mcx:3", "xcap:3" }); sDefaults.putStringArray(KEY_MISSED_INCOMING_CALL_SMS_PATTERN_STRING_ARRAY, new String[0]); - sDefaults.putBoolean(KEY_DISABLE_DUN_APN_WHILE_ROAMING, false); + sDefaults.putBoolean(KEY_DISABLE_DUN_APN_WHILE_ROAMING_WITH_PRESET_APN_BOOL, false); + sDefaults.putString(KEY_DEFAULT_PREFERRED_APN_NAME_STRING, ""); } /**