有没有办法将 CellInfoNr 转换为 CellSignalStrengthNr?

Is there a way to make a CellInfoNr to CellSignalStrengthNr?

我正在寻找用于输出内部小区信息(如 RSRP、RSRQ、SINR、RSSI)的文档。

我想看看 5G(New Radio) 数据。

cellRSRP = ((CellSignalStrengthNr) ((CellInfoNr) cellInfo).getCellSignalStrength()).getCsiRsrp();

这就是我尝试获得 5G 的 cellRSRP。 它与获取 LTE 数据非常相似。


而且这个不行,因为我故意投

(CellSignalStrengthNr)

在此代码上

((CellInfoNr) cellInfo).getCellSignalStrength())

由于 getCellSignalStrength() 没有 return CellSignalStrengthNr 数据, (它returns CellSignalStrength)

所以我只是在代码上投射,没有检测到错误,一切似乎都很顺利。

但不是,我是来问问题的。

所以,简而言之,

  1. 有没有正常的方法来制作 CellSignalStrengthNr 而无需转换?
  2. 或者我应该尝试更多不同的转换方式吗?

根据 android.telephony 中的代码, CellSignalStrengthNr 扩展了 CellSignalStrength。

所以,我认为您不需要将 CellSignalStrength 设为 CellSignalStrengthNr。 If "telephonyManager.requestCellInfoUpdate()" returns CellInfoNr, CellInfoNr中的CellSignalStrength为CellSignalStrengthNr.

就这样..

CellInfoNr cellinfo = ((CellInfoNr) cellInfo)
CellSignalStrengthNr signal = ((CellSignalStrengthNr) cellinfo.getCellSignalStrength())