I have an app that needs to figure out the country code of the phone number the user has. My understanding is that I can't just get the phone number of the user, but, is there a way for example if I have a US phone number to get the country code +1?
I have found multiple answers that claim that using core telephony you can get the country code "+1" but I tried a few and none of them work.
I tried this:
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);
which prints:
"country code is: 310, mnc: 410, mcc: 310"
So, for a US number I would like to get +1.
Is there a way to do this?
EDIT: With further search I found this:
How to map MCC + MNC to users phone country code in iOS objective-C without using Location info?
It might do the trick, but I was looking for a more official way to do this.
You can get the country code with:
Which will give you
US
for a USA based device. You can map from country code to country phone code via the JSON data available on this.