getAllCellInfo为2G sims返回null

时间:2015-12-22 08:47:07

标签: android telephonymanager

如果我在包含2G sim的设备中使用getAllCellInfo(),则返回null(注意:API级别:21)。我甚至试过getNeighboringCellInfo()它返回一个空的List<NeighboringCellInfo>

TelephonyManager telephonyManager = (TelephonyManager)mContext.getSystemService( Context.TELEPHONY_SERVICE );

    if (Build.VERSION.SDK_INT>= Build.VERSION_CODES.JELLY_BEAN_MR2) {
        List<CellInfo> cellInfos = telephonyManager.getAllCellInfo();
        if(cellInfos==null){
            List<NeighboringCellInfo> neighboringCellInfos = telephonyManager.getNeighboringCellInfo();
            CellLocation cellLocation = telephonyManager.getCellLocation();

        }
}

注意:我的清单文件中getAllCellInfo需要权限android.permission.ACCESS_COARSE_LOCATION

1 个答案:

答案 0 :(得分:0)

很抱歉发布这个不恰当的问题。我发现,我上面提到的问题不是因为我使用的是2G sim,而是因为我在SIM1 Slot中没有SIM卡。当我使用3G sim(插槽1)和2G(插槽2)的代码时,它按预期工作,然后我禁用Slot1来检查2G,我遇到了上述问题。

经过一段时间的测试后,我启用了SIM1并将其更改为2G,现在我得到了预期的结果。我写的是它可以帮助别人。对不起我的英语不好。