我有一个应用需要找出用户拥有的电话号码的国家/地区代码。我的理解是,我无法获取用户的电话号码,但是,有没有办法,例如,如果我有一个美国电话号码来获取国家代码+1?
我找到了多个答案,声称使用核心电话可以获得国家代码" + 1"但我尝试了一些,但没有一个工作。
我试过了:
CTTelephonyNetworkInfo *network_Info = [CTTelephonyNetworkInfo new];
CTCarrier *carrier = network_Info.subscriberCellularProvider;
NSString *mnc = [carrier mobileNetworkCode];
NSString *mcc = [carrier mobileCountryCode];
NSLog(@"country code is: %@, mnc: %@, mcc: %@", carrier.mobileCountryCode, mnc, mcc);
打印:
"country code is: 310, mnc: 410, mcc: 310"
所以,对于一个美国号码,我想获得+1。
有办法做到这一点吗?
编辑: 通过进一步搜索,我发现了这个:
How to map MCC + MNC to users phone country code in iOS objective-C without using Location info?
它可能会成功,但我正在寻找更正式的方法来实现这一目标。
答案 0 :(得分:9)
您可以使用以下网址获取国家/地区代码:
NSString *cc = [carrier isoCountryCode];
这将为您提供US
美国设备。您可以通过this上提供的JSON数据从国家/地区代码映射到国家/地区电话代码。