diff options
author | Zoey Chen <zoeychen@google.com> | 2021-02-22 21:03:44 +0800 |
---|---|---|
committer | Zoey Chen <zoeychen@google.com> | 2021-03-08 20:25:00 +0800 |
commit | 809f500e0daf52fa67bcc123375f63059135550a (patch) | |
tree | 90d6c5cf6f855d4899a718967773e04c5294722c /packages/SystemUI/src | |
parent | 4fff45499f77f786981395fa8a4509a3700173a4 (diff) |
[Telephony] Use TelephonyCallback instead of PhoneStateListener part1
Since the redesign of PhoneStateListener, use TelephonyCallback to get the callback of EVENT_*
Bug: 167684594
Test: make
Change-Id: Ia3b777b12142b104b5798804f50b34748f9bf28c
Merged-In: Ia3b777b12142b104b5798804f50b34748f9bf28c
Diffstat (limited to 'packages/SystemUI/src')
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java | 34 |
1 files changed, 16 insertions, 18 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java index 49be648755c3..1486826c1857 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java @@ -25,11 +25,11 @@ import android.provider.Settings.Global; import android.telephony.Annotation; import android.telephony.CellSignalStrength; import android.telephony.CellSignalStrengthCdma; -import android.telephony.PhoneStateListener; import android.telephony.ServiceState; import android.telephony.SignalStrength; import android.telephony.SubscriptionInfo; import android.telephony.SubscriptionManager; +import android.telephony.TelephonyCallback; import android.telephony.TelephonyDisplayInfo; import android.telephony.TelephonyManager; import android.text.Html; @@ -63,7 +63,7 @@ public class MobileSignalController extends SignalController< private final String mNetworkNameSeparator; private final ContentObserver mObserver; @VisibleForTesting - final PhoneStateListener mPhoneStateListener; + final MobileTelephonyCallback mTelephonyCallback; // Save entire info for logging, we only use the id. final SubscriptionInfo mSubscriptionInfo; @@ -83,6 +83,7 @@ public class MobileSignalController extends SignalController< private Config mConfig; @VisibleForTesting boolean mInflateSignalStrengths = false; + final Handler mHandler; // TODO: Reduce number of vars passed in, if we have the NetworkController, probably don't // need listener lists anymore. @@ -98,7 +99,8 @@ public class MobileSignalController extends SignalController< mPhone = phone; mDefaults = defaults; mSubscriptionInfo = info; - mPhoneStateListener = new MobilePhoneStateListener((new Handler(receiverLooper))::post); + mHandler = new Handler(receiverLooper); + mTelephonyCallback = new MobileTelephonyCallback(); mNetworkNameSeparator = getTextIfExists(R.string.status_bar_network_name_separator) .toString(); mNetworkNameDefault = getTextIfExists( @@ -157,15 +159,7 @@ public class MobileSignalController extends SignalController< * Start listening for phone state changes. */ public void registerListener() { - mPhone.listen(mPhoneStateListener, - PhoneStateListener.LISTEN_SERVICE_STATE - | PhoneStateListener.LISTEN_SIGNAL_STRENGTHS - | PhoneStateListener.LISTEN_CALL_STATE - | PhoneStateListener.LISTEN_DATA_CONNECTION_STATE - | PhoneStateListener.LISTEN_DATA_ACTIVITY - | PhoneStateListener.LISTEN_CARRIER_NETWORK_CHANGE - | PhoneStateListener.LISTEN_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGE - | PhoneStateListener.LISTEN_DISPLAY_INFO_CHANGED); + mPhone.registerTelephonyCallback(mHandler::post, mTelephonyCallback); mContext.getContentResolver().registerContentObserver(Global.getUriFor(Global.MOBILE_DATA), true, mObserver); mContext.getContentResolver().registerContentObserver(Global.getUriFor( @@ -177,7 +171,7 @@ public class MobileSignalController extends SignalController< * Stop listening for phone state changes. */ public void unregisterListener() { - mPhone.listen(mPhoneStateListener, 0); + mPhone.unregisterTelephonyCallback(mTelephonyCallback); mContext.getContentResolver().unregisterContentObserver(mObserver); } @@ -622,11 +616,15 @@ public class MobileSignalController extends SignalController< pw.println(" isDataDisabled=" + isDataDisabled() + ","); } - class MobilePhoneStateListener extends PhoneStateListener { - public MobilePhoneStateListener(Executor executor) { - super(executor); - } - + class MobileTelephonyCallback extends TelephonyCallback implements + TelephonyCallback.SignalStrengthsListener, + TelephonyCallback.ServiceStateListener, + TelephonyCallback.DataConnectionStateListener, + TelephonyCallback.DataActivityListener, + TelephonyCallback.CarrierNetworkListener, + TelephonyCallback.ActiveDataSubscriptionIdListener, + TelephonyCallback.DisplayInfoListener + { @Override public void onSignalStrengthsChanged(SignalStrength signalStrength) { if (DEBUG) { |