有没有办法知道Android上的漫游运营商?
我知道getNetworkOperatorName()返回运营商名称,但它从IMSI获取名称,而这个运营商可能不是在漫游时使用的运营商。
发布于 2017-01-05 01:55:38
你看到this thread了吗?
以下是
在安卓系统中有趣的功能:
TelephonyManager.getSimOperator()
返回主运算符(MCC + MNC)。它只返回存储在SIM卡上的IMSI的第一部分。
ServiceState.getOperatorNumeric()
返回当前运算符(MCC + MNC)。这是从当前小区站点检索的。
GsmCellLocation.getLac()
返回当前小区站点的位置区号。
GsmCellLocation.getCid()
返回当前小区站点的小区ID。
其中一些具有CDMA等效项:
在非“全球电话”中,这将返回TelephonyManager.getSimOperator()
的前6位数字(例如3100004)。这是假的,因为CDMA IMSI的MNC有00,其中2位不是3,两者都是无用的。最后的4实际上是订阅者ID的开头。据我所知,这是Android的一个bug。在全球电话中,它可能会返回MCC
欧洲运营商的+MNC。
ServiceState.getOperatorNumeric()
返回MCC + 00。这基本上是无用的,因为它不能识别运营商。
CdmaCellLocation.getSystemId()
返回当前小区cite的系统ID (这标识了拥有小区站点的运营商)。它类似于MNC。
CdmaCellLocation.getNetworkId()
返回当前小区站点的网络ID。它类似于LAC。
CdmaCellLocation.getBaseStationId()
返回当前小区站点的基站ID,类似于CID。
缺少的是返回归属SID的TelephonyManager.getSimOperator ()
的CDMA等价物。
https://stackoverflow.com/questions/41470248
复制相似问题