在iPhone中使用移动运营商识别国家代码编程?

有没有办法从移动networking获取国家代码? 我们可以通过代码获取设备中的SIM卡的国家名称吗?

请用一些工作代码来帮助我。 我检查了CoreTelephony框架,但ddnt获得成功。

提前致谢 !!

编辑:与Xcode 6,只需添加此行,即使链接到项目的框架是自动完成的:

@import CoreTelephony; 

原文:将CoreTelephony.framework添加到您的项目。 在你的class级里面添加这两行:

 #import <CoreTelephony/CTCarrier.h> #import <CoreTelephony/CTTelephonyNetworkInfo.h> 

这是代码:

 CTTelephonyNetworkInfo *networkInfo = [[CTTelephonyNetworkInfo alloc] init]; CTCarrier *carrier = [networkInfo subscriberCellularProvider]; // Get carrier name NSString *carrierName = [carrier carrierName]; if (carrierName != nil) NSLog(@"Carrier: %@", carrierName); // 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); 

请注意,国家代码是数字代码,您可以在这里find列表

它在CoreTelephony内部

 CTTelephonyNetworkInfo *networkInfo = [[CTTelephonyNetworkInfo alloc] init]; CTCarrier *carrier = [networkInfo subscriberCellularProvider];