OSDN Git Service

Use LTE signal level when under LTE
authorMatthew Xie <mattx@google.com>
Fri, 23 Jan 2015 22:51:46 +0000 (14:51 -0800)
committerMatthew Xie <mattx@google.com>
Mon, 26 Jan 2015 18:40:47 +0000 (10:40 -0800)
Bug: 17898918
Change-Id: I9f3bb8d874e24440c2b8de85a6a0d7dbdadb3935

src/com/android/bluetooth/hfp/HeadsetPhoneState.java

index ec96375..ee81e62 100644 (file)
@@ -249,7 +249,15 @@ class HeadsetPhoneState {
                 if (mService == HeadsetHalConstants.NETWORK_STATE_NOT_AVAILABLE) {
                     mSignal = 0;
                 } else if (signalStrength.isGsm()) {
-                    mSignal = gsmAsuToSignal(signalStrength);
+                    mSignal = signalStrength.getLteLevel();
+                    if (mSignal == SignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN) {
+                        mSignal = gsmAsuToSignal(signalStrength);
+                    } else {
+                        // SignalStrength#getLteLevel returns the scale from 0-4
+                        // Bluetooth signal scales at 0-5
+                        // Let's match up the larger side
+                        mSignal++;
+                    }
                 } else {
                     mSignal = cdmaDbmEcioToSignal(signalStrength);
                 }