Mainline use cellSignalStrength instead

Bug: 146046311
Test: 1. open SIM status and check signal strength. (PASS)
2.atest make RunSettingsRoboTests /
ROBOTEST_FILTER=SimStatusDialogControllerTest(PASS)

Change-Id: I93e9dc09a01aa76b7d26660a32944df79cda93f3
Merged-In: I93e9dc09a01aa76b7d26660a32944df79cda93f3
This commit is contained in:
SongFerngWang
2019-12-11 23:20:36 +08:00
parent ada1f6b10b
commit 54b00d859b
2 changed files with 118 additions and 15 deletions

View File

@@ -26,6 +26,7 @@ import android.os.Bundle;
import android.os.PersistableBundle;
import android.os.UserHandle;
import android.telephony.CarrierConfigManager;
import android.telephony.CellSignalStrength;
import android.telephony.PhoneStateListener;
import android.telephony.ServiceState;
import android.telephony.SignalStrength;
@@ -48,6 +49,8 @@ import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnPause;
import com.android.settingslib.core.lifecycle.events.OnResume;
import java.util.List;
public class SimStatusDialogController implements LifecycleObserver, OnResume, OnPause {
private final static String TAG = "SimStatusDialogCtrl";
@@ -430,11 +433,37 @@ public class SimStatusDialogController implements LifecycleObserver, OnResume, O
}
private int getDbm(SignalStrength signalStrength) {
return signalStrength.getDbm();
List<CellSignalStrength> cellSignalStrengthList = signalStrength.getCellSignalStrengths();
int dbm = -1;
if (cellSignalStrengthList == null) {
return dbm;
}
for (CellSignalStrength cell : cellSignalStrengthList) {
if (cell.getDbm() != -1) {
dbm = cell.getDbm();
break;
}
}
return dbm;
}
private int getAsuLevel(SignalStrength signalStrength) {
return signalStrength.getAsuLevel();
List<CellSignalStrength> cellSignalStrengthList = signalStrength.getCellSignalStrengths();
int asu = -1;
if (cellSignalStrengthList == null) {
return asu;
}
for (CellSignalStrength cell : cellSignalStrengthList) {
if (cell.getAsuLevel() != -1) {
asu = cell.getAsuLevel();
break;
}
}
return asu;
}
@VisibleForTesting