Ios 限制iPhone应用程序的功能适用于不同的应用程序商店

Ios 限制iPhone应用程序的功能适用于不同的应用程序商店,ios,app-store,Ios,App Store,我在appStore上有一个应用程序。但是这个应用程序从服务器端的xml获取一些数据 我的应用程序在不同的苹果商店。但是,我想将某些功能仅限于特定的应用商店。我如何使应用程序适用于不同的应用商店,比如让应用程序为不同的应用商店读取不同的xml,或者类似的东西?可能吗?或者我的应用程序可以读取商店类型的应用程序内的任何地方,例如,查找其美国商店或日本商店等。我认为在应用程序设置中的开发者帐户中,您可以选择上载到哪些商店,或者,您的意思是希望为某些商店提供不同的内容?实现这一点的简单方法是在API调

我在appStore上有一个应用程序。但是这个应用程序从服务器端的xml获取一些数据


我的应用程序在不同的苹果商店。但是,我想将某些功能仅限于特定的应用商店。我如何使应用程序适用于不同的应用商店,比如让应用程序为不同的应用商店读取不同的
xml
,或者类似的东西?可能吗?或者我的应用程序可以读取商店类型的应用程序内的任何地方,例如,查找其美国商店或日本商店等。

我认为在应用程序设置中的开发者帐户中,您可以选择上载到哪些商店,或者,您的意思是希望为某些商店提供不同的内容?

实现这一点的简单方法是在API调用中提供一个输入参数,应用程序可以请求它来自哪个国家,然后根据该参数提供优化的结果。然后,在iTunes connect中启动多个应用程序,每个应用程序指定API请求中的国家,并且只允许从该国家下载

例如,如果您有两个应用程序:

  • 我的应用程序(英国)-API调用:
  • 我的应用程序(美国)-API调用:
注意:您在iTunes connect中设置的国家是注册到用户帐户的应用商店,而不是基于用户实际所在的国家

或者,您可以使用在线服务根据其IP确定位置。我没有这样做,但快速搜索会发现:


实际上,您可以通过两种方式来实现:

1-为每个国家构建不同的二进制文件

2-找到一个API,让你知道什么是用户的参考存储

关于第二个选项,苹果文档中的快速搜索并没有返回具体的API来执行此操作。 当然,基于区域设置是不好的(如果用户更改语言设置怎么办?)

我找到的唯一方法是使用SKProduct类。它有一个
priceLocale
属性,返回一个
NSLocale
实例。因此,如果你这样做:

mySKProduct.priceLocale.localeIdentifier
您将拥有一个NSString,其语言环境与引用AppStore关联。(在我的测试中:它_IT@currency=欧元)

我在一个启用了应用内购买的项目中尝试了它,我认为您必须设置一个真正的SKProduct才能使其正常工作

问候
Fabio

实际上禁用了某些商店的某些功能,启用了其他商店的功能:)例如,我不想在美国显示列表,但我想在英国显示