2

onSignalStrengthChanged を呼び出さずに信号強度を取得する方法を知っている人はいますか。onSignalStrengthchanged の問題は、信号強度が変化したときに呼び出され、別の基準に従って信号強度の値を取得する必要があることです。

前もって感謝します。

4

4 に答える 4

0

上記の Andre の回答に基づいて、Kotlin ではこのワンライナーを使用できます (API 17 以降):

fun getRadioSignalLevel(): Int {
  return when (val info = telephonyManager.allCellInfo?.firstOrNull()) {
    is CellInfoLte   -> info.cellSignalStrength.level
    is CellInfoGsm   -> info.cellSignalStrength.level
    is CellInfoCdma  -> info.cellSignalStrength.level
    is CellInfoWcdma -> info.cellSignalStrength.level
    else             -> 0
  }
}
于 2019-02-08T02:03:53.913 に答える