app*_*ife 3 macos storekit in-app-purchase swift mac-catalyst
应用内购买对于我的 iOS 方面来说效果很好。StoreKit 中的数据已按原样填充。相同的代码不适用于该项目的 Mac Catalyst 版本。我什至在 App Store 上为我的 Mac 应用程序创建了一个列表,其中包含用于应用程序内购买的不同捆绑标识符。我有一个打印功能,可以返回 StoreKit 找到的产品,它在 iOS 上运行良好,但在使用 Mac Catalyst 时没有任何结果。
这是我所做的:
适用于 iOS 但不适用于 MacOS 的代码:
override func viewDidLoad() {
SKPaymentQueue.default().add(self)
let productIds: Set<String> = ["..."]
var request = SKProductsRequest(productIdentifiers: productIds)
request.delegate = self
request.start()
}
func productsRequest(_ request: SKProductsRequest, didReceive response: SKProductsResponse) {
print("Loaded")
for product in response.products {
print("What came: \(product.productIdentifier) \(product.localizedTitle) \(product.price.floatValue)")}
Run Code Online (Sandbox Code Playgroud)
iOS 应用程序将返回产品标识符、标题和价格。Mac 应用程序将一无所获。
我发现了问题。我没有创建对我的产品请求的强引用。
这行代码解决了我的问题:
var request: SKProductsRequest!
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
495 次 |
| 最近记录: |