У меня есть приложение, которое вычисляет RSSI из данных объекта SignalStrength. На Nexus 5 (Android 4.4.2) в сети LTE уровень ASU отличается от значения в настройках системы. Так что RSSI тоже отличается.
Вот скриншот с сообщением Toast, сделанным приложением:
Я получаю ASU следующим образом:
if (isLte) {
String[] parts = signalStrength.toString().split(" ");
int asu = Byte.parseByte(parts[8]);
}
Должен ли я использовать PhoneStateListener onCellInfoChanged(List<CellInfo> cellInfo)
вместо этого? (Этот способ определенно не будет работать на устройствах Samsung.)