gpt4 book ai didi

android - 如何在 telephonymanager android 中读取 cellInfo 中的数据

转载 作者:搜寻专家 更新时间:2023-11-01 08:39:46 25 4
gpt4 key购买 nike

我正在尝试制作一个程序来读取通常的信号电平和其他类似的东西并将其提供给读者,我使用了 getAllCellInfo()虽然它有一些数据,但我想不出一种方法来提取其中的数据以使其易于阅读。我尝试了 .toString() 方法,但它给出了相同的结果

List<CellInfo> cell=  tm.getAllCellInfo();

有没有办法让它更容易阅读?还是有更简单的方法来获取这些数据?

我正在寻找 RSSI 和功率相关参数。

最佳答案

这是我所做的:

    protected class SignalStrengthListener extends PhoneStateListener {
@Override
public void onSignalStrengthsChanged(android.telephony.SignalStrength signalStrength) {

tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);

ltestr = signalStrength.toString();
parts = ltestr.split(" ");

try {
cellInfoList = tm.getAllCellInfo();
for (CellInfo cellInfo : cellInfoList) {

if (cellInfo instanceof CellInfoLte) {
// cast to CellInfoLte and call all the CellInfoLte methods you need
// Gets the LTE PCI: (returns Physical Cell Id 0..503, Integer.MAX_VALUE if unknown)

cellPci = ((CellInfoLte) cellInfo).getCellIdentity().getPci();
}
}
} catch (Exception e) {
Log.d("SignalStrength", "Exception: " + e.getMessage());
}

super.onSignalStrengthsChanged(signalStrength);
}
}

然后我可以打印我需要的 parts 数组元素。在这里,我正在获取 PCI。然后使用 Log.d("TAG", "PCI is "+ cellPci); 快速检查打印它并在 logcat 中观察它。

您可以在我的 github 上查看我的应用程序获取 LTE RSRP、RSRQ、PCI 等: https://github.com/parksjg/IndoorLTE3a

关于android - 如何在 telephonymanager android 中读取 cellInfo 中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33895260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com