2012-07-26 88 views
15

我想知道是否有解決方案來找出用戶在哪個國家下載了應用程序。iOS iTunes Store國家

例如:當用戶打開應用程序時,app x已在美國下載,該應用程序將檢查它在哪個國家下載。在這個例子中,回報將是「美國」

有沒有人有關於如何解決這個問題的想法?

回答

0

無法檢查下載了哪個App Store的應用程序。

如果您需要做任何基於位置的任何事情,您應該查看CLLocation以獲取用戶的當前位置,但如果應用程序詢問用戶的位置並不明顯,爲什麼需要位置。

您還可以檢查用戶設備上的語言,例如英國的en_gb,丹麥的dk,加拿大的en_ca等。雖然這並不能完全覆蓋某些國家/地區的人將語言設置爲某種除了這些國家的母語之外,它總比沒有好。

3

iTunes商店國家和用戶設置的區域設置之間可能存在足夠好的關聯。這取決於你的需求 - 如果這還不夠,我不認爲有一種方法可以知道應用程序從哪個實際商店下載。

要檢索的語言環境,你可以使用:

NSString *localeIdentifier = [[NSLocale currentLocale] localeIdentifier]; 

希望這是足以滿足您的需求。

6

如果您有任何可用的應用內購買,您可以從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);