iOS iTunes Store国家
问题描述:
我想知道是否有解决方案来找出用户在哪个国家下载了应用程序。iOS iTunes Store国家
例如:当用户打开应用程序时,app x已在美国下载,该应用程序将检查它在哪个国家下载。在这个例子中,回报将是“美国”
有没有人有关于如何解决这个问题的想法?
答
无法检查下载了哪个App Store的应用程序。
如果您需要做任何基于位置的任何事情,您应该查看CLLocation
以获取用户的当前位置,但如果应用程序询问用户的位置并不明显,为什么需要位置。
您还可以检查用户设备上的语言,例如英国的en_gb,丹麦的dk,加拿大的en_ca等。虽然这并不能完全覆盖某些国家/地区的人将语言设置为某种除了这些国家的母语之外,它总比没有好。
答
iTunes商店国家和用户设置的区域设置之间可能存在足够好的关联。这取决于你的需求 - 如果这还不够,我不认为有一种方法可以知道应用程序从哪个实际商店下载。
要检索的语言环境,你可以使用:
NSString *localeIdentifier = [[NSLocale currentLocale] localeIdentifier];
希望这是足以满足您的需求。
答
如果您有任何可用的应用内购买,您可以从SKProduct中读取语言环境。作为回退,使用设备的区域设置。
NSLocale *locale;
SKProduct *baseProduct = nil; // replace as applicable
if (baseProduct) {
locale = baseProduct.priceLocale; // from the user's credit card on iTunes
} else {
locale = [NSLocale currentLocale]; // from user preferences
}
NSString *countryCode = [locale objectForKey:NSLocaleCountryCode];
NSLog(@"Two-letter country code: %@", countryCode);