2016-08-21 17 views
1

現在アプリ内購入を持つiOSアプリを開発中です。Ios:アプリの購入ダイアログが表示されない

SKPaymentを支払いキューに追加すると、何も起こりません。

public func buyProduct(product: SKProduct) { 
    SKPaymentQueue.defaultQueue().addTransactionObserver(self); 

    print("buy \(product.productIdentifier)"); 
    SKPaymentQueue.defaultQueue().addPayment(SKPayment(product: product)); 
} 

私がチェックしたすべてがnullでなく、すべてが有効ですが、私は文字通り私のアプリ上で購入ボタンを押すと、何も私は、製品を購入したい場合は私に聞いて何のプロンプト、表示されません。

コンソール内にエラーや警告はなく、文字通り何も起こりません。

transactionStateは更新されているようですが、なぜプロンプトが表示されないのかに関する有用な情報はないようです。

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

    for transaction in transactions { 
     print(transaction.transactionIdentifier); 
     print(transaction.transactionState); 
     print(transaction.originalTransaction) 
     print(transaction.error); 
    } 


} 

出力(1つのタップ後)

buy com.innovationsoft.top10.unlock_cat_8 

nil 

SKPaymentTransactionState 

nil 

nil 

P.S私は、シミュレータ上で実行したとき、私はしかし、何も起こらない任意の物理デバイス上で、iTunesにサインインするためのプロンプトを取得します。

助けていただければ幸いです。

+0

あなたは 'SKPaymentQueue.defaultQueue()を追加しました。addTransactionObserverアプリのデリゲートで(自己)'? http://stackoverflow.com/a/26677736/3953581 – Jad

+0

こんにちは、私が試したことを含めるように投稿を修正しました。私はちょうど安全で、まだ運がないために、支払いキューに追加する前に追加しました。 –

+0

appDelegateの 'didFinishLaunchingWithOptions'に追加して試してみてください。 – Jad

答えて

0

問題はいくつかの種類のバグです。

私のデバイスを再起動しましたが、今はすべて動作しています。

-_-

関連する問題