Android - 如何判断设备是否接收到 GSM 信号?

Android - How to find if device is receiving GSM signals or not?

我只是想检查一下我的设备是否正在接收 GSM 信号。我知道 SignalStrength class 及其 getGsmSignalStrength()。我曾与 PhoneStateListeneronSignalStrengthsChanged().

合作过

但即使在我没有收到任何信号的情况下,我仍然获得大于 0 的 GSM 信号强度,如屏幕截图所示:

查看信号电平,它甚至不低,它是红色交叉的。而getGsmSignalStrength()返回我16。(当前是不同的数字,请忽略它。)

如果您只对运营商的 GSM 信号感兴趣,请使用 CellIdentityGsm 中的 getMnc() 来确定您正在测量的信号是否有效。

如果您仅在设备处于服务状态(即成功连接到网络)时才需要 GSM 信号,请使用 ServiceState 检查器确定设备所处的状态。

根据上面的评论,症状表明您正在测量其他运营商的 GSM 信号。