我想在我的应用程序(通过代码)中了解我的用户所在的应用商店(例如英格兰/法国/西班牙等)。
我已经读过我们可以使用语言环境执行此操作: https://developer.apple.com/documentation/foundation/nslocale/1643060-countrycode
但我想与Apple Store合作。出于法律目的,我不想为欧洲人展示与美国人相同的内容。
有人已经完成了吗?谢谢!
答案 0 :(得分:7)
在iOS13中,SKStorefront
类属性countryCode
可用于获取代表与App Store店面关联的国家/地区的三个字母的代码。
对于低于13的iOS版本,唯一可行的解决方案是从priceLocale
获取SKProduct
。
答案 1 :(得分:3)
您不能为特定国家/地区限制IAP(因此您没有使用的Apple Store的信息)。 您可以通过检查国家/地区ID来禁用/启用项目。
有不同的检查方式,对我而言,最好的方法是检查用户运营商ID。
例如:
func checkCellularNumber() -> Bool {
let networkInfo = CTTelephonyNetworkInfo()
guard let info = networkInfo.subscriberCellularProvider else {return false}
if let carrier = info.isoCountryCode {
print("Carrier code = \(carrier)");
return true
}
return false
}