Fix register multiple PhoneStateListeners.

To avoid multiple PhoneStateListeners are registered, when user changes
the tab between SIMs, unregister the previous listener.

Change-Id: I99cf36a2c25bfbb74322b55efc6d751ea96810e5
This commit is contained in:
yifan.bai
2016-05-17 17:41:19 +08:00
committed by Yifan Bai
parent 5620699fb9
commit 4bf1704650

View File

@@ -389,6 +389,12 @@ public class SimStatus extends InstrumentedPreferenceActivity {
}
mPhone = phone;
// To avoid register multiple listeners when user changes the tab.
if (mPhoneStateListener != null && mTelephonyManager != null) {
mTelephonyManager.listen(mPhoneStateListener,
PhoneStateListener.LISTEN_NONE);
mPhoneStateListener = null;
}
mPhoneStateListener = new PhoneStateListener(mSir.getSubscriptionId()) {
@Override
public void onDataConnectionStateChanged(int state) {