在iOS上的App Purchase中,无法在Swift 4中获取产品

问题描述 投票:0回答:1

我试图从App Store Connect获取应用内购买,如下所示:

private let kOneMonthSubscriptionId = "DOUBLESPEEDENERGY"
func loadProducts() {
    let identifiers = Set([kOneMonthSubscriptionId])
    let request = SKProductsRequest(productIdentifiers: identifiers)
    request.delegate = self
    request.start()
}

 override func viewDidAppear(_ animated: Bool) {


    if SKPaymentQueue.canMakePayments()
    {
        loadProducts()
    }

}

extension homeVC: SKProductsRequestDelegate {
func productsRequest(_ request: SKProductsRequest, didReceive response: SKProductsResponse) {
    if response.products.count > 0 {
        print("Purchasable products available!")
        // 1. Save the SKProduct's so you could let the user make a purchase
        // 2. Update the UI - it lets you change the product prices without updating the app
    } else {
        print("No purchasable products available.")
        // This might happen when your product identifiers are incorrect or your in-app purchases products weren't processed on iTunes Connect yet
    }
}

请查看我的代码是否有问题,我真的很感激!

在此先感谢您的帮助!

ios xcode in-app-purchase swift4
1个回答
2
投票

最可能的原因是您在App Store Connect(协议,税务和银行部分(付费应用))中没有应用内购买设置的银行方法,如果您没有,那么您的应用无法访问In-应用购买服务,因为即使您处于沙盒环境中,它也不知道在哪里进行付款。

如果这无助于查看其他可能性,那么为什么它不起作用:

  • 您没有使用显式的App ID。
  • 您没有使用与您的显式应用ID相关联的配置文件。
  • 您没有在代码中使用正确的产品标识符。
  • 您没有在iTunes Connect中清除待售应用内购买产品。
  • 您可能已修改过您的产品,但这些更改尚未可用于所有App Store服务器。

希望这可以帮助!

© www.soinside.com 2019 - 2024. All rights reserved.