[Settings] Fix NPE from updating subinfo changed.
- Refactor code to avoid NPE. Bug: 278721219 Test: make passed Test: atest MobileDataPreferenceControllerTest passed Change-Id: I1fe57b8835677335ae9102cfff71451060ea4f78
This commit is contained in:
@@ -25,10 +25,10 @@ import android.telephony.TelephonyManager;
|
|||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
|
|
||||||
import androidx.annotation.VisibleForTesting;
|
import androidx.annotation.VisibleForTesting;
|
||||||
|
import androidx.fragment.app.FragmentManager;
|
||||||
import androidx.lifecycle.LifecycleObserver;
|
import androidx.lifecycle.LifecycleObserver;
|
||||||
import androidx.lifecycle.LifecycleOwner;
|
import androidx.lifecycle.LifecycleOwner;
|
||||||
import androidx.lifecycle.OnLifecycleEvent;
|
import androidx.lifecycle.OnLifecycleEvent;
|
||||||
import androidx.fragment.app.FragmentManager;
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
import androidx.preference.SwitchPreference;
|
import androidx.preference.SwitchPreference;
|
||||||
@@ -232,13 +232,12 @@ public class MobileDataPreferenceController extends TelephonyTogglePreferenceCon
|
|||||||
mSubscriptionInfoEntityList.forEach(entity -> {
|
mSubscriptionInfoEntityList.forEach(entity -> {
|
||||||
if (entity.getSubId() == mSubId) {
|
if (entity.getSubId() == mSubId) {
|
||||||
mSubscriptionInfoEntity = entity;
|
mSubscriptionInfoEntity = entity;
|
||||||
|
if (entity.getSubId() == SubscriptionManager.getDefaultDataSubscriptionId()) {
|
||||||
|
mDefaultSubId = entity.getSubId();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
int subId = mSubscriptionInfoEntity.getSubId();
|
|
||||||
if (mSubscriptionInfoEntity != null
|
|
||||||
&& subId == SubscriptionManager.getDefaultDataSubscriptionId()) {
|
|
||||||
mDefaultSubId = subId;
|
|
||||||
}
|
|
||||||
update();
|
update();
|
||||||
refreshSummary(mPreference);
|
refreshSummary(mPreference);
|
||||||
}
|
}
|
||||||
|
@@ -20,7 +20,6 @@ import static com.android.settings.core.BasePreferenceController.AVAILABLE_UNSEA
|
|||||||
|
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
import static org.mockito.Matchers.anyInt;
|
|
||||||
import static org.mockito.Mockito.doReturn;
|
import static org.mockito.Mockito.doReturn;
|
||||||
import static org.mockito.Mockito.spy;
|
import static org.mockito.Mockito.spy;
|
||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
|
Reference in New Issue
Block a user