In sim1 APN settings interface and hot plug out/in sim2, APN information change to sim2's
STEPS TO REPRODUCE: 1. Insert two sim into device, sim1 is CUCC, sim2 is CMCC 2. Goto Settings-Network & Internet-sim1-MobileNetworkSettings-Access Point Names. It shows CUCC APN information 3. Hot plug out sim2 4. Hot plug in sim2, APN information changes to CMCC APN information EXPECTED RESULTS: When hot plug out/in sim2, sim1 APN settings interface should still keep its APN information instead of changing to sim2 APN information Change-Id: I04c769f60ba1686b2c9bebcd07e3a04685979442 Bug: 141087659 Test:In sim1 APN settings interface, hot plug out/in sim2, it shows sim1 APN information all the time, test pass.
This commit is contained in:
@@ -113,6 +113,7 @@ public class ApnSettings extends RestrictedSettingsFragment
|
|||||||
private HandlerThread mRestoreDefaultApnThread;
|
private HandlerThread mRestoreDefaultApnThread;
|
||||||
private SubscriptionInfo mSubscriptionInfo;
|
private SubscriptionInfo mSubscriptionInfo;
|
||||||
private int mSubId;
|
private int mSubId;
|
||||||
|
private int mPhoneId;
|
||||||
private UiccController mUiccController;
|
private UiccController mUiccController;
|
||||||
private String mMvnoType;
|
private String mMvnoType;
|
||||||
private String mMvnoMatchData;
|
private String mMvnoMatchData;
|
||||||
@@ -151,7 +152,9 @@ public class ApnSettings extends RestrictedSettingsFragment
|
|||||||
if (!mRestoreDefaultApnMode) {
|
if (!mRestoreDefaultApnMode) {
|
||||||
int extraSubId = intent.getIntExtra(TelephonyManager.EXTRA_SUBSCRIPTION_ID,
|
int extraSubId = intent.getIntExtra(TelephonyManager.EXTRA_SUBSCRIPTION_ID,
|
||||||
SubscriptionManager.INVALID_SUBSCRIPTION_ID);
|
SubscriptionManager.INVALID_SUBSCRIPTION_ID);
|
||||||
if (extraSubId != mSubId) {
|
if (SubscriptionManager.isValidSubscriptionId(extraSubId) &&
|
||||||
|
mPhoneId == SubscriptionManager.getPhoneId(extraSubId) &&
|
||||||
|
extraSubId != mSubId) {
|
||||||
// subscription has changed
|
// subscription has changed
|
||||||
mSubId = extraSubId;
|
mSubId = extraSubId;
|
||||||
mSubscriptionInfo = getSubscriptionInfo(mSubId);
|
mSubscriptionInfo = getSubscriptionInfo(mSubId);
|
||||||
@@ -182,7 +185,7 @@ public class ApnSettings extends RestrictedSettingsFragment
|
|||||||
final Activity activity = getActivity();
|
final Activity activity = getActivity();
|
||||||
mSubId = activity.getIntent().getIntExtra(SUB_ID,
|
mSubId = activity.getIntent().getIntExtra(SUB_ID,
|
||||||
SubscriptionManager.INVALID_SUBSCRIPTION_ID);
|
SubscriptionManager.INVALID_SUBSCRIPTION_ID);
|
||||||
|
mPhoneId = SubscriptionManager.getPhoneId(mSubId);
|
||||||
mIntentFilter = new IntentFilter(
|
mIntentFilter = new IntentFilter(
|
||||||
TelephonyIntents.ACTION_ANY_DATA_CONNECTION_STATE_CHANGED);
|
TelephonyIntents.ACTION_ANY_DATA_CONNECTION_STATE_CHANGED);
|
||||||
mIntentFilter.addAction(TelephonyManager.ACTION_SUBSCRIPTION_CARRIER_IDENTITY_CHANGED);
|
mIntentFilter.addAction(TelephonyManager.ACTION_SUBSCRIPTION_CARRIER_IDENTITY_CHANGED);
|
||||||
|
Reference in New Issue
Block a user