ios - IAP 是否总是在相同的有序列表中返回?

标签 ios objective-c in-app-purchase

我正在为我的应用中的店面编写自定义 UIView。大多数教程展示了某种 UITableView,用于显示 Apple 应用内购买的结果。

我没有使用表格来显示我的购买按钮,而是布置了一个我希望按钮显示在其中的 View 。

我的问题是:产品 X 是否始终在返回列表中排在第 n 位?例如,5 包鱼食在返回列表中始终排在第 6 位,而 10 包鱼食始终排在第 7 位?这样我就可以在屏幕上的布局中放置一个按钮,而且我知道如果用户按下该按钮,就会购买正确的应用内商品。

我一直在用这个tutorial作为引用。但我似乎找不到有关自定义店面的教程。

我编写了这些辅助方法来从数组中提取数据。

- (NSString* ) getProductNameForObjectAtIndex:(int)index {
    SKProduct * product = (SKProduct *) _products[index];
    return product.localizedTitle;
}

- (NSDecimalNumber* ) getPriceForObjectAtIndex:(int)index {
    SKProduct * product = (SKProduct *) _products[index];
    return product.price;
}

然后我的按钮从

获得它们的标题(价格)
[button setTitle:[self getPriceForObjectAtIndex:5]];

将索引硬编码到按钮中。

想法?

最佳答案

没有。不要指望任何特定订单中的产品。根据 productIdentifier 而不是它在数组中的位置做出决定。

除了当您从 Apple 获得列表时以任何顺序返回的产品之外,随着您添加、删除或更改产品,位置可能会随着时间而改变。

关于ios - IAP 是否总是在相同的有序列表中返回?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33696491/

相关文章:

iphone - 在 iOS 6 的 TableView 中对数组进行排序

objective-c - 时间以毫秒为典型时间格式

android - 在 Google Play 上为 Android 订阅启用免费试用

ios - CKQuery操作错误: This operation has been rate limited

iOS8企业应用程序安装问题

objective-c - 将对象编码/解码到字典的最优雅的方法是什么

ios - 付款 - IAP 或第三方

android - AppLicensing 失败 - 签名为空字符串

iphone - 下载文件时如何更新 UICollectionViewCell 子类中的进度条

ios - 下载 iOS 应用程序而不重定向到 App Store