2014-11-11 2 views
6

मैं इन-ऐप खरीदारी करने की कोशिश कर रहा हूं और सबकुछ पुनर्स्थापित किए बिना ठीक काम करता है।इन-ऐप खरीद पुनर्स्थापित

func paymentQueueRestoreCompletedTransactionsFinished(queue:SKPaymentQueue!) 
{ 
    for transaction:AnyObject in queue.transactions 
    { 
     let trans : SKPaymentTransaction = transaction as SKPaymentTransaction 
     var identifier : NSString = trans.payment.productIdentifier 
     println(identifier) 
    } 
} 

समस्या यह है कि मैं यहाँ का सामना मैं purchased identifier यहाँ नहीं मिल रहा है है: नीचे दिए गए कोड मैं लिखा है है। मुझे लगता है कि मैंने कोड को गलत लिखा है।

उत्तर

0

रियाज़ुल, जब आप खरीद बहाल कर रहे हैं तो आपको मूल लेनदेन को देखने की आवश्यकता है।

कोड की जरूरत है चाहिए:

var identifier : NSString = trans.originalTransaction.payment.productIdentifier 

मुझे पता है अगर यह अभी भी काम नहीं कर रहा हूँ।

+0

मैं सैंडबॉक्स में अपने कोड का परीक्षण किया है, लेकिन यह नहीं था किसी भी उत्पाद इंडेंटिफायर वापस करें। मैं उपभोग्य खरीद के साथ बहाली कर रहा हूँ – TomSawyer

1

अपने बटन क्लिक कार्रवाई

SKPaymentQueue.default().restoreCompletedTransactions() 
SKPaymentQueue.defaultQueue().addTransactionObserver(self) 

संपादित पर कोड की दो पंक्तियाँ नीचे जोड़ें - स्विफ्ट 3 के लिए:

SKPaymentQueue.default().add(self) 
SKPaymentQueue.default().restoreCompletedTransactions() 
संबंधित मुद्दे