SignalStrength オブジェクトのデータから RSSI を計算するアプリがあります。LTE ネットワークの Nexus 5 (Android 4.4.2) では、ASU レベルがシステム設定の値と異なります。したがって、RSSI も異なります。
これは、アプリによって作成されたトースト メッセージのスクリーンショットです。
私はこのようにASUを取得しています:
if (isLte) {
String[] parts = signalStrength.toString().split(" ");
int asu = Byte.parseByte(parts[8]);
}
代わりにPhoneStateListener を使用する必要がありonCellInfoChanged(List<CellInfo> cellInfo)
ますか? (この方法は、Samsung デバイスでは確実に機能しません。)