我有一个应用程序,它根据SignalStrength对象的数据计算RSSI。在LTE网络中的Nexus 5(Android 4.4.2)上,ASU级别与“系统设置”中的值不同。所以RSSI也不同。
以下是应用程序发出的Toast消息的屏幕截图:
我这样得到ASU:
if (isLte) {
String[] parts = signalStrength.toString().split(" ");
int asu = Byte.parseByte(parts[8]);
}
我应该使用PhoneStateListener onCellInfoChanged(List<CellInfo> cellInfo)
吗? (这种方式绝对不适用于三星设备。)
答案 0 :(得分:2)
嗯,答案很简单:设置显示RSRP,而不是RSSI。 RSRP存储在上面代码中数组的[9]部分。