Simplified the initial attach APN logic

1. Instead of using the hardcoded order, read the order
   from configuration. This also allows carriers to specify
   the allowed types of APN can be used for initial attach.
2. Removed the preferred APN logic. The preferred APN is
   specifically for the default APN after a successful data
   setup. It's not related to initial attach.

Fix: 169657628
Test: Manual
Change-Id: I9fbf4f270726cba1281770db88fec7c1bb62e6db
This commit is contained in:
Jack Yu
2021-02-17 14:08:42 -08:00
parent cd4ec6acfb
commit 0bebba7378

View File

@@ -4764,7 +4764,7 @@ public class CarrierConfigManager {
public static final String KEY_STORE_SIM_PIN_FOR_UNATTENDED_REBOOT_BOOL =
"store_sim_pin_for_unattended_reboot_bool";
/**
/**
* Determine whether "Enable 2G" toggle can be shown.
*
* Used to trade privacy/security against potentially reduced carrier coverage for some
@@ -4772,6 +4772,16 @@ public class CarrierConfigManager {
*/
public static final String KEY_HIDE_ENABLE_2G = "hide_enable_2g_bool";
/**
* Indicates the allowed APN types that can be used for LTE initial attach. The order of APN
* types in the configuration is the order of APN types that will be used for initial attach.
* Empty list indicates that no APN types are allowed for initial attach.
*
* @hide
*/
public static final String KEY_ALLOWED_INITIAL_ATTACH_APN_TYPES_STRING_ARRAY =
"allowed_initial_attach_apn_types_string_array";
/** The default value for every variable. */
private final static PersistableBundle sDefaults;
@@ -5330,6 +5340,8 @@ public class CarrierConfigManager {
sDefaults.putInt(KEY_DEFAULT_RTT_MODE_INT, 0);
sDefaults.putBoolean(KEY_STORE_SIM_PIN_FOR_UNATTENDED_REBOOT_BOOL, true);
sDefaults.putBoolean(KEY_HIDE_ENABLE_2G, false);
sDefaults.putStringArray(KEY_ALLOWED_INITIAL_ATTACH_APN_TYPES_STRING_ARRAY,
new String[]{"ia", "default", "ims", "mms", "dun", "emergency"});
}
/**