0

我有一个返回 LTE 设备的小区 ID 的方法,但在某些设备上它返回 -1。这是方法:

    public int getCellId() {
    int cellId = Integer.MAX_VALUE;
    CellInfo cellInfo = null;
    List<CellInfo> allCellInfo = telephonyManager.getAllCellInfo();
    if(allCellInfo!= null && allCellInfo.size()>0)
        cellInfo = allCellInfo.get(0);
    if (cellInfo instanceof CellInfoLte) {
        CellInfoLte cellInfoLte = (CellInfoLte) cellInfo;
        if (cellInfoLte != null) {
            cellId = cellInfoLte.getCellIdentity().getCi();
        }
    }
    return cellId;
}
4

1 回答 1

0

您已经正确实现了它,不幸的是,并非所有制造商都正确实现了所有 Android API,尤其是在电话领域。有时所有的 LTE 值也会是 -1,有时只是 CI。

于 2015-08-27T03:15:32.867 回答