Merge "Auto update summary for mobile network preference."
This commit is contained in:
committed by
Android (Google) Code Review
commit
43a2878215
@@ -32,11 +32,11 @@ import com.android.settings.wrapper.RestrictedLockUtilsWrapper;
|
|||||||
import com.android.settingslib.Utils;
|
import com.android.settingslib.Utils;
|
||||||
import com.android.settingslib.core.AbstractPreferenceController;
|
import com.android.settingslib.core.AbstractPreferenceController;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
import com.android.settingslib.core.lifecycle.events.OnPause;
|
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||||
import com.android.settingslib.core.lifecycle.events.OnResume;
|
import com.android.settingslib.core.lifecycle.events.OnStop;
|
||||||
|
|
||||||
public class MobileNetworkPreferenceController extends AbstractPreferenceController
|
public class MobileNetworkPreferenceController extends AbstractPreferenceController
|
||||||
implements PreferenceControllerMixin, LifecycleObserver, OnResume, OnPause {
|
implements PreferenceControllerMixin, LifecycleObserver, OnStart, OnStop {
|
||||||
|
|
||||||
private static final String KEY_MOBILE_NETWORK_SETTINGS = "mobile_network_settings";
|
private static final String KEY_MOBILE_NETWORK_SETTINGS = "mobile_network_settings";
|
||||||
|
|
||||||
@@ -71,9 +71,7 @@ public class MobileNetworkPreferenceController extends AbstractPreferenceControl
|
|||||||
@Override
|
@Override
|
||||||
public void displayPreference(PreferenceScreen screen) {
|
public void displayPreference(PreferenceScreen screen) {
|
||||||
super.displayPreference(screen);
|
super.displayPreference(screen);
|
||||||
if (isAvailable()) {
|
mPreference = screen.findPreference(getPreferenceKey());
|
||||||
mPreference = screen.findPreference(getPreferenceKey());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -82,15 +80,13 @@ public class MobileNetworkPreferenceController extends AbstractPreferenceControl
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onResume() {
|
public void onStart() {
|
||||||
if (isAvailable()) {
|
if (isAvailable()) {
|
||||||
if (mPhoneStateListener == null) {
|
if (mPhoneStateListener == null) {
|
||||||
mPhoneStateListener = new PhoneStateListener() {
|
mPhoneStateListener = new PhoneStateListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onServiceStateChanged(ServiceState serviceState) {
|
public void onServiceStateChanged(ServiceState serviceState) {
|
||||||
if (mPreference != null) {
|
updateState(mPreference);
|
||||||
mPreference.setSummary(mTelephonyManager.getNetworkOperatorName());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -99,9 +95,14 @@ public class MobileNetworkPreferenceController extends AbstractPreferenceControl
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onPause() {
|
public void onStop() {
|
||||||
if (mPhoneStateListener != null) {
|
if (mPhoneStateListener != null) {
|
||||||
mTelephonyManager.listen(mPhoneStateListener, PhoneStateListener.LISTEN_NONE);
|
mTelephonyManager.listen(mPhoneStateListener, PhoneStateListener.LISTEN_NONE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CharSequence getSummary() {
|
||||||
|
return mTelephonyManager.getNetworkOperatorName();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -15,11 +15,9 @@
|
|||||||
*/
|
*/
|
||||||
package com.android.settings.network;
|
package com.android.settings.network;
|
||||||
|
|
||||||
import static android.arch.lifecycle.Lifecycle.Event.ON_PAUSE;
|
import static android.arch.lifecycle.Lifecycle.Event.ON_START;
|
||||||
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
|
import static android.arch.lifecycle.Lifecycle.Event.ON_STOP;
|
||||||
|
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
import static org.mockito.Mockito.doReturn;
|
import static org.mockito.Mockito.doReturn;
|
||||||
import static org.mockito.Mockito.mock;
|
import static org.mockito.Mockito.mock;
|
||||||
import static org.mockito.Mockito.spy;
|
import static org.mockito.Mockito.spy;
|
||||||
@@ -53,10 +51,10 @@ import org.robolectric.annotation.Config;
|
|||||||
|
|
||||||
@RunWith(SettingsRobolectricTestRunner.class)
|
@RunWith(SettingsRobolectricTestRunner.class)
|
||||||
@Config(
|
@Config(
|
||||||
manifest = TestConfig.MANIFEST_PATH,
|
manifest = TestConfig.MANIFEST_PATH,
|
||||||
sdk = TestConfig.SDK_VERSION,
|
sdk = TestConfig.SDK_VERSION,
|
||||||
shadows = {ShadowRestrictedLockUtilsWrapper.class, ShadowConnectivityManager.class,
|
shadows = {ShadowRestrictedLockUtilsWrapper.class, ShadowConnectivityManager.class,
|
||||||
ShadowUserManager.class}
|
ShadowUserManager.class}
|
||||||
)
|
)
|
||||||
public class MobileNetworkPreferenceControllerTest {
|
public class MobileNetworkPreferenceControllerTest {
|
||||||
|
|
||||||
@@ -110,11 +108,11 @@ public class MobileNetworkPreferenceControllerTest {
|
|||||||
mLifecycle.addObserver(mController);
|
mLifecycle.addObserver(mController);
|
||||||
doReturn(true).when(mController).isAvailable();
|
doReturn(true).when(mController).isAvailable();
|
||||||
|
|
||||||
mLifecycle.handleLifecycleEvent(ON_RESUME);
|
mLifecycle.handleLifecycleEvent(ON_START);
|
||||||
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
|
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
|
||||||
PhoneStateListener.LISTEN_SERVICE_STATE);
|
PhoneStateListener.LISTEN_SERVICE_STATE);
|
||||||
|
|
||||||
mLifecycle.handleLifecycleEvent(ON_PAUSE);
|
mLifecycle.handleLifecycleEvent(ON_STOP);
|
||||||
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
|
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
|
||||||
PhoneStateListener.LISTEN_NONE);
|
PhoneStateListener.LISTEN_NONE);
|
||||||
}
|
}
|
||||||
@@ -131,8 +129,8 @@ public class MobileNetworkPreferenceControllerTest {
|
|||||||
|
|
||||||
// Display pref and go through lifecycle to set up listener.
|
// Display pref and go through lifecycle to set up listener.
|
||||||
mController.displayPreference(mScreen);
|
mController.displayPreference(mScreen);
|
||||||
mLifecycle.handleLifecycleEvent(ON_RESUME);
|
mLifecycle.handleLifecycleEvent(ON_START);
|
||||||
verify(mController).onResume();
|
verify(mController).onStart();
|
||||||
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
|
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
|
||||||
PhoneStateListener.LISTEN_SERVICE_STATE);
|
PhoneStateListener.LISTEN_SERVICE_STATE);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user