调用请求时清除字符串集:Swift应用内购买
我试图在游戏中实现应用内购买,但当我将可用产品集发送到我的产品请求功能时,该集被清除 这是用于禁用ads的小额购买。启动请求的按钮起作用,fetchAvailableProducts中的ProductIdentifier包含正确的产品,但productsRequest中的集合为空调用请求时清除字符串集:Swift应用内购买,swift,Swift,我试图在游戏中实现应用内购买,但当我将可用产品集发送到我的产品请求功能时,该集被清除 这是用于禁用ads的小额购买。启动请求的按钮起作用,fetchAvailableProducts中的ProductIdentifier包含正确的产品,但productsRequest中的集合为空 func fetchAvailableProducts(){ // Put here your IAP Products ID's let productIdentifiers = N
func fetchAvailableProducts(){
// Put here your IAP Products ID's
let productIdentifiers = NSSet(objects: NON_CONSUMABLE_PURCHASE_PRODUCT_ID)
print(productIdentifiers as! Set<String>)
productsRequest = SKProductsRequest(productIdentifiers: productIdentifiers as! Set<String>)
productsRequest.delegate = self
productsRequest.start()
}
extension IAPHandler: SKProductsRequestDelegate, SKPaymentTransactionObserver{
// MARK: - REQUEST IAP PRODUCTS
func productsRequest (_ request:SKProductsRequest, didReceive response:SKProductsResponse) {
if (response.products.count > 0) {
iapProducts = response.products
for product in iapProducts{
let numberFormatter = NumberFormatter()
numberFormatter.formatterBehavior = .behavior10_4
numberFormatter.numberStyle = .currency
numberFormatter.locale = product.priceLocale
let price1Str = numberFormatter.string(from: product.price)
print(product.localizedDescription + "\nfor just \(price1Str!)")
}
} else {
print("products list is empty")
}
}
func fetchAvailableProducts(){
//把你的IAP产品ID放在这里
让productIdentifiers=NSSet(对象:非消耗品\采购\产品\ ID)
打印(产品标识符为!集)
productsRequest=SKProductsRequest(productIdentifiers:productIdentifiers as!Set)
productsRequest.delegate=self
productsRequest.start()
}
扩展IAPHandler:SKProductsRequestDelegate,SKPaymentTransactionObserver{
//马克:-申请IAP产品
func productsRequest(uRequest:SKProductsRequest,didReceive response:SKProductsResponse){
如果(response.products.count>0){
iapProducts=response.products
对于iapProducts中的产品{
设numberFormatter=numberFormatter()
numberFormatter.formatterBehavior=.behavior10\u 4
numberFormatter.numberStyle=.currency
numberFormatter.locale=product.priceLocale
让price1Str=numberFormatter.string(from:product.price)
打印(product.localizedDescription+“\n仅适用于\(price1Str!)”)
}
}否则{
打印(“产品列表为空”)
}
}
控制台输出为:[“com.me.myapp.noAds”]
产品列表为空 我已检查协议,在我的应用中打开应用内购买,并将应用内购买添加到app store connect:
请检查您是否已完成以下所有操作
应用商店连接->功能->应用内购买
项目->选择目标->功能选项卡->打开应用内购买
你在app store connect中添加了任何产品吗?你确定产品ID正确吗?app store似乎不知道你的产品。是的,我刚刚添加了app store connect的屏幕截图。我已经完成了这些步骤中的每一步。我将在问题中添加每个步骤的屏幕截图。仍然无效。我必须完成它他同意了,现在可以了,谢谢