Мне не нужны точные данные о местоположении, и я не хочу, чтобы пользователь видел, как "Это приложение хочет определить ваше местоположение". Мне просто нужно определить страну пользователя, предполагая, что у них есть интернет-соединение через сеть или Wi-Fi.
Каков наилучший способ сделать это? Есть ли способ использовать их IP?
Это будет работать, только если у них есть носитель:
CTTelephonyNetworkInfo *netInfo = [[CTTelephonyNetworkInfo alloc] init];
CTCarrier *carrier = [netInfo subscriberCellularProvider];
NSString *mcc = [carrier mobileCountryCode];
И NSLocale
не является надежным в том, что пользователь может изменить его в настройках своего устройства. Невозможно использовать настройку языка устройства по той же причине. Мне нужна страна, основанная на том, где они физически расположены.