为单个区域设置 IAP 定价,与其他区域不同

Setting the IAP pricing for a single region, different to every other region

我正在使用 IAPs 创建一个应用程序,并且一切正常,包括每个区域都显示适合该区域的价格。例如,美国在英国以 $ 和 £ 显示 UIButtonIAP 的价格。

我在我的应用程序中使用两个定价层,有两个 UIButtons

UIButton 1:定价等级 1 UIButton 2:定价替代第 1 层

在每个国家/地区,这都很有效,因为第一个 UIButton 显示(例如,在英国)0.79 英镑,第二个显示 0.99 英镑,这很好。

然而美国似乎有问题。第 1 层的定价为 0.99 美元,替代第 1 层的定价也是 0.99 美元。因此,在我的应用程序中,UIButton 1 和 2 IAPs 分别显示 $0.99 和 $0.99。

我不确定我是否理解为什么 iTunes 定价会出现这个问题,但我正在考虑进行某种检查。

所以在我的应用程序中,我有:

- (NSArray *)iapUnlimitedEntriesPurchase
{
    if (!_iapUnlimitedEntriesPurchase)
    {
        _iapUnlimitedEntriesPurchase = @[@"com.companyname.App.Unlimited"];
    }
    return _iapUnlimitedEntriesPurchase;
}

- (void)validateProductIdentifiers
{    
    SKProductsRequest *request = [[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithArray:self.iapUnlimitedEntriesPurchase]];
    request.delegate = self;
    [request start];
}

那么我是否可以检查我是否在美国地区(使用美国帐户),然后 return 我将使用不同的 IAP 非消耗性产品创建定价等级?

所以其他所有地区都是正常的,但如果您使用的是美国帐户,那么您会看到不同的定价吗?

如果可能的话,我应该如何以及在哪里放置代码?

我提出这个要求的原因是因为我可以为第二层使用不同的层级 UIButton,但随后价格会大幅上涨,这比我想使用我的应用程序的价格要高。

如有任何想法,我们将不胜感激。

理论是引入了替代等级以允许基于 "friendly" 当地货币价值的价格。因此,有一个 0.99 欧元的层级,而不是 0.99 美元转换为的 0.91 欧元。未添加它们以允许对定价进行更精细的粒度控制。

虽然你可以为所欲为,但这是一场失败的游戏。随着货币汇率的波动,如果一个按钮基于替代层,则两个按钮的相对定价将会浮动。几个月后,您可以轻松地以成本更低的方式获得更有价值的替代品。

警告:我不使用替代层,但以上是我对它们的理解。