获取网络MNC和MCC

时间:2011-11-09 06:47:32

标签: iphone roaming carrier

我知道我可以使用CTCarrier类的以下属性获取运营商名称,MNC和MCC

carrierName
mobileCountryCode
mobileNetworkCode

这些详细信息是插入设备的SIM卡。有没有办法获得设备使用的网络的类似细节?

实施例: SIM MCC和MNC是404和02。 网络MCC和MNC可以是404和02,404和03等。


编辑:这就是我想要的。

我有一张位于x的沃达丰的SIM卡。 MCC和MNC分别为404和30。 现在,如果我前往位置y,我的SIM卡可能会锁定到沃达丰或其他网络(有时称为漫游)

现在我想了解我的SIM卡被锁定的网络细节!!

2 个答案:

答案 0 :(得分:4)

John Muchow在他的文章here中的话:

  

随着iOS 4的发布,Apple推出了两个新的框架   获取运营商信息。 CTCarrier提供有关的信息   蜂窝提供商,包括运营商名称,移动网络代码和   移动运营商代码。 CTTelephonyNetworkInfo是要访问的通道   通过CTCarrier的信息,这个类还提供了更新   通知程序,如果您需要检测细胞变化的变化   提供商信息,例如,如果用户在那里交换SIM   卡。

// Setup the Network Info and create a CTCarrier object
CTTelephonyNetworkInfo *networkInfo = [[[CTTelephonyNetworkInfo alloc] init] autorelease];
CTCarrier *carrier = [networkInfo subscriberCellularProvider];

// Get mobile country code 
NSString *mcc = [carrier mobileCountryCode];
if (mcc != nil)
   NSLog(@"Mobile Country Code (MCC): %@", mcc);

// Get mobile network code
NSString *mnc = [carrier mobileNetworkCode];
if (mnc != nil)
   NSLog(@"Mobile Network Code (MNC): %@", mnc);

答案 1 :(得分:2)

它看起来不像现在这样(iOS 5.0)。

CoreTelephony框架是您可以找到此API的地方,正如您(以及Apple的文档)所述,CTCarrier属性仅为您提供用户的蜂窝服务提供商的详细信息,而不是当前网络。

您应该在http://bugreport.apple.com向Apple提交增强请求,并希望它们包含您未来操作系统更新中要查找的内容。

出于好奇,你想用这些信息做什么?