從 App Store 獲取本地化的產品資訊
使用 SKProductsRequest
從一組產品識別符號字串中獲取本地化產品資訊:
import StoreKit
let productIdentifierSet = Set(["yellowSubmarine", "pennyLane"])
let productsRequest = SKProductsRequest(productIdentifiers: productIdentifierSet)
為了處理 productsRequest
中的產品,我們需要為處理響應的請求分配一個委託。委託需要符合 SKProductsRequestDelegate
協議,這意味著它必須繼承 NSObject
(即任何 Foundation
物件)並實現 productsRequest
方法:
class PaymentManager: NSObject, SKProductsRequestDelegate {
var products: [SKProduct] = []
func productsRequest(request: SKProductsRequest,
didReceiveResponse response: SKProductsResponse) {
products = response.products
}
}
要啟動 productsRequest
,我們將 PaymentManager
指定為 products-request 的委託,並根據請求呼叫 start()
方法:
let paymentManager = PaymentManager()
productsRequest.delegate = paymentManager
productsRequest.start()
如果請求成功,產品將在 paymentManager.products
中。