- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有谁知道从 TelephonyManager.getAllCellInfo()
返回的列表中的单元格索引是否与 SIM 插槽编号相关?
我正在使用 Android API 24...
经过一些实验,似乎运行方法 updateCellInfo
- 如下所述 - 始终返回一个列表,其中第一个索引对应于设备的最后一个 SIM 插槽,最后一个索引对应于设备的第一个 SIM 插槽。
谁能证实这一点?这种相关性是否合理?
private ArrayList<CellInfo> updateCellInfo(ArrayList<CellInfo> cellInfo)
{
//Create new ArrayList
ArrayList<CellInfo> cellInfos= new ArrayList<>();
//cellInfo is obtained from telephonyManager.getAllCellInfo()
if(cellInfo.size()!=0)
{
for (int i = 0; i < cellInfo.size(); i++)
{
//Return registered cells only
int index=0;
CellInfo temp=cellInfo.get(i);
if (temp.isRegistered())
{
cellInfos.add(index, temp);
index++;
}
}
}
return cellInfos;
}
最佳答案
只需为遇到相同问题的其他人添加此答案即可。将 CellInfo 连接到 SlotId 的正确方法是收集 Activity 订阅列表 (SubscriptionInfo),其中包含 SlotIndex 信息,并将其 MNC 代码与 CellInfo MNC 代码交叉引用。如果您查看代码,可能会更容易...
private CellInfo getSlotCellInfo(int slotIndex){
ArrayList<CellInfo> allCellInfo = new ArrayList<>(telephonyManager.getAllCellInfo());
SubscriptionManager subscriptionManager = SubscriptionManager.from(getActivity());
List<SubscriptionInfo> activeSubscriptionInfoList = subscriptionManager.getActiveSubscriptionInfoList();
SubscriptionInfo subscriptionInfo;
for (int i = 0; i < activeSubscriptionInfoList.size(); i++) {
SubscriptionInfo temp = activeSubscriptionInfoList.get(i);
if (temp.getSimSlotIndex() == slotIndex) {
subscriptionInfo=temp;
break;
}
}
for (int index = 0; index < allCellInfo.size(); index++) {
int mnc = 0;
CellInfo temp = allCellInfo.get(index);
String cellType = checkCellType(temp);
if (cellType == "GSM") {
CellIdentityGsm identity = (((CellInfoGsm) temp).getCellIdentity());
mnc = identity.getMnc();
} else if (cellType == "WCDMA") {
CellIdentityWcdma identity = (((CellInfoWcdma) temp).getCellIdentity());
mnc = identity.getMnc();
} else if (cellType == "LTE") {
CellIdentityLte identity = (((CellInfoLte) temp).getCellIdentity());
mnc = identity.getMnc();
}
if (mnc == subscriptionInfo.getMnc()) {
return temp;
}
}
}
关于android - 双 SIM 卡中的 getAllCellInfo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49254591/
我正在使用 getAllCellInfo 从我的手机(unrooted LG G5 - 它的值(value))获取服务和相邻小区信息,但该函数返回所有相邻测量塔的重复数据。在我所在的地区,我的测试数据
有谁知道从 TelephonyManager.getAllCellInfo() 返回的列表中的单元格索引是否与 SIM 插槽编号相关? 我正在使用 Android API 24... 经过一些实验,似
我是 Android 新手,我正在从事一个项目,该项目旨在收集手机观察到的所有细胞信息。我使用了 TelephonyManager.getAllCellInfo() 方法,但它总是返回 null。 我
我有一个 Android 应用程序可以获取手机信号塔的信息。我使用此 getAllCellInfo() 来获取主单元格和相邻单元格的信息。我将 ACCESS_COARSE_LOCATION 权限包含在
我目前正在为我的大学研究项目开发 Android 应用程序。此应用程序应该能够读取附近 GSM 基站的 RSSI 级别。我编写了以下函数,它成功读取了附近小区的 RSSI 电平。我每 200 毫秒调用
我阅读了所有关于 getAllCellInfo() 的帖子并且遇到了类似 this 的情况.下面发布的代码在 Android 6 (OnePlus One) 上运行良好,但在 Google Nexus
最近我在尝试使用 Android 设备获取相邻小区的信息。而且我试过很多品牌的安卓手机,比如三星,htc。结果只是Htc可以得到邻区信息。我使用的函数是 TelephonyMananger.getNe
Android 有一个 API 方法:getAllCellInfo() “从设备上的所有 radio 返回所有观察到的小区信息,包括主小区和相邻小区”。在 iOS 上,我找到了 CTCarrier类以
我的 Android 版本是 4.2.1,我正在尝试使用 TelephonyManager.getAllCellInfo() 方法。在我的 list 文件中,我拥有 ACCESS_COARSE_UPD
我是一名优秀的程序员,十分优秀!