2017-06-14 4 views
-1

私は自分のアプリケーションにアプリを購入して広告を削除しようとしています。しかし、私が試してみると、製品IDが見つからなかったことが分かります。私は、製品IDを3回チェックしました。それは正しいです。私は問題を把握していないようです。これは、コンソールに出力するものです:見つからないSwift - Xcodeがアプリの購入で見つからない

製品:com.myCoolAwesomeApp.mjay.noAds

var product: SKProduct? 

var productID = "com.myCoolAwesomeApp.mjay.noAds" 

    func getPurchaseInfo() { 

    if SKPaymentQueue.canMakePayments() { 

     let request = SKProductsRequest(productIdentifiers: NSSet(objects: self.productID) as! Set<String>) 

     request.delegate = self 

     request.start() 


    } else { 

     productDescription.text = "Please enable In App Purchases in your settings." 


    } 


} 

func productsRequest(_ request: SKProductsRequest, didReceive response: SKProductsResponse) { 

    var products = response.products 

    if (products.count) == 0 { 


     productDescription.text = "Product not found." 


    } else { 


     product = products[0] 
     productDescription.text = product!.localizedDescription 
     buyButton.isEnabled = true 


    } 

    let invalids = response.invalidProductIdentifiers 

    for product in invalids { 

     print("Product not found: \(product)") 

    } 


} 


func paymentQueue(_ queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) { 

    for transaction in transactions { 

     switch transaction.transactionState { 
      case SKPaymentTransactionState.purchased: 
       SKPaymentQueue.default().finishTransaction(transaction) 

       productDescription.text = "Purchase Successful" 
       buyButton.isEnabled = false 

       let save = UserDefaults.standard 
       save.set(true, forKey: "Purchase") 
       save.synchronize() 

      case SKPaymentTransactionState.failed: 
       SKPaymentQueue.default().finishTransaction(transaction) 
       productDescription.text = "Purchase Failed. Try again later." 

      default: 
       break 

      } 
     } 
    } 
} 
+0

あなたのproductIDをNSSetに設定しようとしましたか?それは単なる文字列です。 – dfd

答えて

-1

私は正確に同様の問題に遭遇します。

Create a unique App ID 
Enable in-app purchasing for this App ID 
Generate and install a new provisioning profile on your device 
Update the bundle ID and code signing profile in Xcode 
Check that your project’s .plist Bundle ID match your App ID 
Complete your contract, tax, and banking Information. You need a VALID contract 

バイナリを提出していないどちらもアプリ内購入のスクリーンショットを提出する必要はありません公式ドキュメントで述べたように:ここではアップルからこのテクニカルノートを読んだ後にチェック/ adressedする必要がありますいくつかのステップがあります。私はこれについて様々なブログで多くのミスリーディング情報を見てきました。

あなたがこのリストの各ポイントに対処したことを確認したら、あなたのアプリを削除して再インストールしてください。

私は基本的に私の側で2つのことがありませんでした:ios有料アプリの契約を正しく設定して、私のデバイスに新しいプロビジョニングプロファイルをインストールしませんでした。あなたの問題だったかもしれませんか?

関連する問題