diff --git a/core/java/android/accounts/AccountManagerService.java b/core/java/android/accounts/AccountManagerService.java index 5ed89418238f5..8cfb75830728c 100644 --- a/core/java/android/accounts/AccountManagerService.java +++ b/core/java/android/accounts/AccountManagerService.java @@ -1397,7 +1397,7 @@ public class AccountManagerService extends IAccountManager.Stub { Log.v(TAG, "current IMSI=" + imsi + "; stored IMSI=" + storedImsi); } - if (!imsi.equals(storedImsi) && !"initial".equals(storedImsi)) { + if (!imsi.equals(storedImsi) && !TextUtils.isEmpty(storedImsi)) { if (Log.isLoggable(TAG, Log.VERBOSE)) { Log.v(TAG, "wiping all passwords and authtokens"); } diff --git a/telephony/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java b/telephony/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java index 4c958f6e8c5e6..dab529ee63e7e 100644 --- a/telephony/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java +++ b/telephony/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java @@ -46,6 +46,7 @@ import com.android.internal.telephony.CommandException; import com.android.internal.telephony.CommandsInterface; import com.android.internal.telephony.DataConnectionTracker; import com.android.internal.telephony.gsm.MccTable; +import com.android.internal.telephony.IccCard; import com.android.internal.telephony.PhoneProxy; import com.android.internal.telephony.ServiceStateTracker; import com.android.internal.telephony.TelephonyEventLog; @@ -443,6 +444,8 @@ final class CdmaServiceStateTracker extends ServiceStateTracker { if (!mIsMinInfoReady) { mIsMinInfoReady = true; } + phone.getIccCard().broadcastIccStateChangedIntent(IccCard.INTENT_VALUE_ICC_IMSI, + null); } else { Log.w(LOG_TAG,"error parsing cdmaSubscription params num=" + cdmaSubscription.length);