我需要从CellSignalStrength.getLevel()
我从CellInfoGsm
通过
TelephonyManager telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
CellInfo allCellInfo = (CellInfo) telephonyManager.getAllCellInfo().get(0);
CellSignalStrength cellSignalStrength = ((CellInfoGsm) allCellInfo).getCellSignalStrength();
int level = cellSignalStrength.getLevel();
但是在某些设备上我从telephonyManager.getAllCellInfo()
获取null,因此广告android doc说我使用telephonyManager.getNeighboringCellInfo()
有没有办法让CellSignalStrength
或"用户友好"来自NeighboringCellInfo
的信号电平?
答案 0 :(得分:1)
我解决了 - 我想我做了 - 通过重写来自getLevel()
的{{1}}函数
我致电CellInfoGsm
,然后将其转换为关卡,例如NeighboringCellInfo.getRssi()
执行
CellInfoGsm.getLevel()