我还没有找到关于此的帖子所以我必须问:有没有办法以编程方式检测应用程序从哪个应用商店下载? (即:德国App Store)
我不想要求位置权限来检测用户位置,但如果没有办法检测应用商店,那么我可能不得不这样做。
答案 0 :(得分:8)
如果您有应用内购买,则可以查看SKProduct
的{{3}},其中包含用户当前登录的商店(货币和国家/地区)。
Apple于10:30在priceLocale会话303优化应用内购买时推荐了这一点。
答案 1 :(得分:5)
我认为您使用用户的当前区域设置来检测它们在哪个国家/地区......但有时可能会失败,因此我不确定检测AppStore的100%有效方法是否有效你。
您需要致电
[[NSLocale currentLocale] objectForKey: NSLocaleCountryCode]
答案 2 :(得分:0)
NSLocale答案错误,因为系统语言设置不必与应用商店国家/地区匹配。一些用户在国外商店购买,因为有更多内容可用。 使用StoreKit / SKProduct可能有效,但仅适用于商店中分发的应用程序。
如果你在Mac上,你可以直接解析Mac App Store的配置文件,如下所示: https://github.com/core-code/CoreLib/blob/master/Mac/JMHostInformation.m 在“appStoreCountryCode”方法
中