这个问题可能与编程一样重要。
自动获取用户所在国家/地区的最佳方法是什么(不询问用户)
购物应用程序,以便在应用程序中显示正确的店面。想象一下,例如,有三家商店 - 日本,美国和法国。
我可以通过三种方式考虑这样做:
答案 0 :(得分:1)
我会使用以下内容:
NSString *locale = [[NSLocale currentLocale] localeIdentifier];
这将适用于在自己国家的绝大多数人,并且没有将他们的地区设置到其他随机国家。
答案 1 :(得分:1)
type==TRUE
会为您提供一个标识符,例如" US" (美国)," ES" (西班牙)等。
答案 2 :(得分:1)
使用<div>
获取国家/地区名称
喜欢
NSLocale
来源Link:
否则使用 NSString *CodeofCountry = [[NSLocale currentLocale] objectForKey:NSLocaleCountryCode];
NSString *countryName = [[NSLocale currentLocale] displayNameForKey:NSLocaleCountryCode value:CodeofCountry];
NSLog(@" Code:%@ Name:%@",CodeofCountry, countryName);
//Code:IN Name:India
获取当前位置&amp; CLLocationManager
执行反向地理编码。您可以获得国家/地区名称
CLGeocoder
否则使用 - (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
{
if (locations == nil)
return;
self.currentLocation = [locations objectAtIndex:0];
[self.geocoder reverseGeocodeLocation:self.currentLocation completionHandler:^(NSArray *placemarks, NSError *error)
{
if (placemarks == nil)
return;
self.currentLocPlacemark = [placemarks objectAtIndex:0];
NSLog(@"Current country: %@", [self.currentLocPlacemark country]);
NSLog(@"Current country code: %@", [self.currentLocPlacemark ISOcountryCode]);
}];
}
,
NSTimeZone