// // MP_IAPManager.swift // relax.offline.mp3.music // // Created by Mr.Zhou on 2024/7/29. // import UIKit import StoreKit ///内部购买项目管理器 class MP_IAPManager: NSObject { ///单例 let shared = MP_IAPManager() ///产品ID(根据开关获取) private var productIdentifiers:[String] = ["6587553652","6587553795","6587554369"] ///产品请求(根据ID获取产品信息) private var productsRequest:SKProductsRequest? ///可用产品组 private var availableProducts:[SKProduct] = [] override init() { super.init() } //执行产品请求 func requestProducts() { //清空可用产品 availableProducts = [] //将产品ID转为Set集合 var setStrings:Set = Set(productIdentifiers) //初始化产品请求 productsRequest = SKProductsRequest(productIdentifiers: setStrings) //实现请求代理 productsRequest?.delegate = self //开始执行请求 productsRequest?.start() } } //MARK: - SKProductsRequestDelegate extension MP_IAPManager: SKProductsRequestDelegate { //产品请求回调执行 func productsRequest(_ request: SKProductsRequest, didReceive response: SKProductsResponse) { //获得可用产品 availableProducts = response.products //判空 guard availableProducts.isEmpty == false else { //无可用产品 print("无可用产品") return } } }