Merge "[Telephony] Use TelephonyCallback instead of PhoneStateListener part5" am: 9abf2bff3b
am: 6003cb977f
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1620520 MUST ONLY BE SUBMITTED BY AUTOMERGER Change-Id: Ib339b36768196e6e5f676944754d5736937b16cd
This commit is contained in:
@@ -18,6 +18,7 @@ package com.android.settings.network;
|
|||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.telephony.PhoneStateListener;
|
import android.telephony.PhoneStateListener;
|
||||||
|
import android.telephony.TelephonyCallback;
|
||||||
import android.telephony.TelephonyManager;
|
import android.telephony.TelephonyManager;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
@@ -28,14 +29,14 @@ import java.util.concurrent.Executor;
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@link PhoneStateListener} to listen to Allowed Network Types changed
|
* {@link TelephonyCallback} to listen to Allowed Network Types changed
|
||||||
*/
|
*/
|
||||||
public class AllowedNetworkTypesListener extends PhoneStateListener implements
|
public class AllowedNetworkTypesListener extends TelephonyCallback implements
|
||||||
PhoneStateListener.AllowedNetworkTypesChangedListener {
|
TelephonyCallback.AllowedNetworkTypesListener {
|
||||||
private static final String LOG_TAG = "NetworkModeListener";
|
private static final String LOG_TAG = "NetworkModeListener";
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
AllowedNetworkTypesListener.OnAllowedNetworkTypesChangedListener mListener;
|
OnAllowedNetworkTypesListener mListener;
|
||||||
private long mAllowedNetworkType = -1;
|
private long mAllowedNetworkType = -1;
|
||||||
private Executor mExecutor;
|
private Executor mExecutor;
|
||||||
|
|
||||||
@@ -44,7 +45,7 @@ public class AllowedNetworkTypesListener extends PhoneStateListener implements
|
|||||||
mExecutor = executor;
|
mExecutor = executor;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setAllowedNetworkTypesChangedListener(OnAllowedNetworkTypesChangedListener lsn) {
|
public void setAllowedNetworkTypesListener(OnAllowedNetworkTypesListener lsn) {
|
||||||
mListener = lsn;
|
mListener = lsn;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -56,7 +57,7 @@ public class AllowedNetworkTypesListener extends PhoneStateListener implements
|
|||||||
public void register(Context context, int subId) {
|
public void register(Context context, int subId) {
|
||||||
TelephonyManager telephonyManager = context.getSystemService(
|
TelephonyManager telephonyManager = context.getSystemService(
|
||||||
TelephonyManager.class).createForSubscriptionId(subId);
|
TelephonyManager.class).createForSubscriptionId(subId);
|
||||||
telephonyManager.registerPhoneStateListener(mExecutor, this);
|
telephonyManager.registerTelephonyCallback(mExecutor, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -67,7 +68,7 @@ public class AllowedNetworkTypesListener extends PhoneStateListener implements
|
|||||||
public void unregister(Context context, int subId) {
|
public void unregister(Context context, int subId) {
|
||||||
TelephonyManager telephonyManager = context.getSystemService(
|
TelephonyManager telephonyManager = context.getSystemService(
|
||||||
TelephonyManager.class).createForSubscriptionId(subId);
|
TelephonyManager.class).createForSubscriptionId(subId);
|
||||||
telephonyManager.unregisterPhoneStateListener(this);
|
telephonyManager.unregisterTelephonyCallback(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -84,7 +85,7 @@ public class AllowedNetworkTypesListener extends PhoneStateListener implements
|
|||||||
/**
|
/**
|
||||||
* Listener for update of Preferred Network Mode change
|
* Listener for update of Preferred Network Mode change
|
||||||
*/
|
*/
|
||||||
public interface OnAllowedNetworkTypesChangedListener {
|
public interface OnAllowedNetworkTypesListener {
|
||||||
/**
|
/**
|
||||||
* Notify the allowed network type changed.
|
* Notify the allowed network type changed.
|
||||||
*/
|
*/
|
||||||
|
@@ -145,7 +145,7 @@ public class EnabledNetworkModePreferenceController extends
|
|||||||
if (mAllowedNetworkTypesListener == null) {
|
if (mAllowedNetworkTypesListener == null) {
|
||||||
mAllowedNetworkTypesListener = new AllowedNetworkTypesListener(
|
mAllowedNetworkTypesListener = new AllowedNetworkTypesListener(
|
||||||
mContext.getMainExecutor());
|
mContext.getMainExecutor());
|
||||||
mAllowedNetworkTypesListener.setAllowedNetworkTypesChangedListener(
|
mAllowedNetworkTypesListener.setAllowedNetworkTypesListener(
|
||||||
() -> updatePreference());
|
() -> updatePreference());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -45,7 +45,7 @@ public class NetworkPreferenceCategoryController extends PreferenceCategoryContr
|
|||||||
mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
|
mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
|
||||||
mAllowedNetworkTypesListener = new AllowedNetworkTypesListener(
|
mAllowedNetworkTypesListener = new AllowedNetworkTypesListener(
|
||||||
context.getMainExecutor());
|
context.getMainExecutor());
|
||||||
mAllowedNetworkTypesListener.setAllowedNetworkTypesChangedListener(
|
mAllowedNetworkTypesListener.setAllowedNetworkTypesListener(
|
||||||
() -> updatePreference());
|
() -> updatePreference());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -77,7 +77,7 @@ public abstract class CdmaBasePreferenceController extends TelephonyBasePreferen
|
|||||||
if (mAllowedNetworkTypesListener == null) {
|
if (mAllowedNetworkTypesListener == null) {
|
||||||
mAllowedNetworkTypesListener = new AllowedNetworkTypesListener(
|
mAllowedNetworkTypesListener = new AllowedNetworkTypesListener(
|
||||||
mContext.getMainExecutor());
|
mContext.getMainExecutor());
|
||||||
mAllowedNetworkTypesListener.setAllowedNetworkTypesChangedListener(
|
mAllowedNetworkTypesListener.setAllowedNetworkTypesListener(
|
||||||
() -> updatePreference());
|
() -> updatePreference());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -80,7 +80,7 @@ public class AutoSelectPreferenceController extends TelephonyTogglePreferenceCon
|
|||||||
mUiHandler = new Handler(Looper.getMainLooper());
|
mUiHandler = new Handler(Looper.getMainLooper());
|
||||||
mAllowedNetworkTypesListener = new AllowedNetworkTypesListener(
|
mAllowedNetworkTypesListener = new AllowedNetworkTypesListener(
|
||||||
new HandlerExecutor(mUiHandler));
|
new HandlerExecutor(mUiHandler));
|
||||||
mAllowedNetworkTypesListener.setAllowedNetworkTypesChangedListener(
|
mAllowedNetworkTypesListener.setAllowedNetworkTypesListener(
|
||||||
() -> updatePreference());
|
() -> updatePreference());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -60,7 +60,7 @@ public class OpenNetworkSelectPagePreferenceController extends
|
|||||||
mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
|
mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
|
||||||
mAllowedNetworkTypesListener = new AllowedNetworkTypesListener(
|
mAllowedNetworkTypesListener = new AllowedNetworkTypesListener(
|
||||||
context.getMainExecutor());
|
context.getMainExecutor());
|
||||||
mAllowedNetworkTypesListener.setAllowedNetworkTypesChangedListener(
|
mAllowedNetworkTypesListener.setAllowedNetworkTypesListener(
|
||||||
() -> updatePreference());
|
() -> updatePreference());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -25,8 +25,8 @@ import static org.mockito.Mockito.when;
|
|||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.HandlerExecutor;
|
import android.os.HandlerExecutor;
|
||||||
import android.telephony.PhoneStateListener;
|
|
||||||
import android.telephony.RadioAccessFamily;
|
import android.telephony.RadioAccessFamily;
|
||||||
|
import android.telephony.TelephonyCallback;
|
||||||
import android.telephony.TelephonyManager;
|
import android.telephony.TelephonyManager;
|
||||||
import android.test.mock.MockContentResolver;
|
import android.test.mock.MockContentResolver;
|
||||||
|
|
||||||
@@ -53,7 +53,7 @@ public class AllowedNetworkTypesListenerTest {
|
|||||||
private AllowedNetworkTypesListener mAllowedNetworkTypesListener;
|
private AllowedNetworkTypesListener mAllowedNetworkTypesListener;
|
||||||
|
|
||||||
@Mock
|
@Mock
|
||||||
private AllowedNetworkTypesListener.OnAllowedNetworkTypesChangedListener mListener;
|
private AllowedNetworkTypesListener.OnAllowedNetworkTypesListener mListener;
|
||||||
@Mock
|
@Mock
|
||||||
private TelephonyManager mTelephonyManager;
|
private TelephonyManager mTelephonyManager;
|
||||||
|
|
||||||
@@ -87,15 +87,15 @@ public class AllowedNetworkTypesListenerTest {
|
|||||||
public void register_shouldRegisterContentObserver() {
|
public void register_shouldRegisterContentObserver() {
|
||||||
mAllowedNetworkTypesListener.register(mContext, SUB_ID);
|
mAllowedNetworkTypesListener.register(mContext, SUB_ID);
|
||||||
|
|
||||||
verify(mTelephonyManager, times(1)).registerPhoneStateListener(any(HandlerExecutor.class),
|
verify(mTelephonyManager, times(1)).registerTelephonyCallback(any(HandlerExecutor.class),
|
||||||
any(PhoneStateListener.class));
|
any(TelephonyCallback.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void unregister_shouldUnregisterContentObserver() {
|
public void unregister_shouldUnregisterContentObserver() {
|
||||||
mAllowedNetworkTypesListener.unregister(mContext, SUB_ID);
|
mAllowedNetworkTypesListener.unregister(mContext, SUB_ID);
|
||||||
|
|
||||||
verify(mTelephonyManager).unregisterPhoneStateListener(
|
verify(mTelephonyManager).unregisterTelephonyCallback(
|
||||||
mAllowedNetworkTypesListener);
|
mAllowedNetworkTypesListener);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user