मुझे अब तक मिल गया है: पुनर्स्थापित करने के बाद, उपयोगकर्ता को "खरीदारी सुविधा" पर क्लिक करने की आवश्यकता होती है, फिर वह $ 0.9 9 प्रश्न से डरता है, फिर लॉगिन करना होता है और फिर कहा जाता है कि सुविधा पहले ही खरीदी गई है और वह इसे मुफ्त में ले जाता है।आईफोन पर पहले ही खरीदे गए ऐप-खरीद को पुनर्स्थापित करें?
मुझे पता है कि सेब एक धर्म है और उपयोगकर्ता मजबूत विश्वास करने वाले हैं, लेकिन क्या कोई बेहतर तरीका नहीं है? :-) मैं जो चाहता हूं वह वास्तव में इसे खरीदने के बिना सुविधा की जांच करना है। उपयोगकर्ता को अपनी खाता जानकारी दर्ज करने की अनुमति देना प्रतीत होता है, शायद $ 0.00 सुविधा खरीद सकती है? या क्या वहां कोई तरीका है जो यह करता है?
मैं पूरे इन-ऐप-खरीद के लिए एमकेस्टोरकिट का उपयोग कर रहा हूं, लेकिन कोई समाधान बहुत अच्छा होगा। darvids0n को
अद्यतन
thanx, अपने विधि मेरी समस्या हल! जो
[[SKPaymentQueue defaultQueue] restoreCompletedTransactions];
मानते हुए कहता है
- (void)removePreviousPurchases { //just for sandbox testing
[[MKStoreManager sharedManager] removeAllKeychainData];
}
- (void)restorePreviousPurchases { //needs account info to be entered
if([SKPaymentQueue canMakePayments]) {
[[MKStoreManager sharedManager] restorePreviousTransactionsOnComplete:^(void) {
NSLog(@"Restored.");
/* update views, etc. */
}
onError:^(NSError *error) {
NSLog(@"Restore failed: %@", [error localizedDescription]);
/* update views, etc. */
}];
}
else
{
NSLog(@"Parental control enabled");
/* show parental control warning */
}
}
धन्यवाद, अंत में इस के लिए उपयोग करने के लिए MKStore-किट विधि मिल गया! (मेरे प्रश्न में संपादित देखें) –
यदि मेरे पास 10 गैर उपभोग्य योग्य खरीद आईडी हैं और इनमें से 4 उपयोगकर्ता द्वारा खरीदे जाते हैं। पुनर्स्थापन के दौरान, मैं कैसे पता लगा सकता हूं कि पहले कौन से खरीदे गए हैं और कौन से नहीं हैं? – Satyam
@Satyamsvv आपको अपने खरीदे गए खरीदारियों के लिए कॉलबैक नहीं मिलेगा। आपको केवल 'SKPaymentTransactionObserver' विधि' में 4 अपडेट किए गए लेनदेन मिलेगा ['-पेमेंटमेंट्यूयू: अपडेटेड ट्रांस्पेक्शन:'] (http://developer.apple.com/library/ios/documentation/StoreKit/Reference/SKPaymentTransactionObserver_Protocol/Reference/Reference.html # // apple_ref/doc/uid/TP40008262-CH1-SW3), और इनमें से 'लेनदेनस्टेट' 'SKPaymentTransactionStateRestored' होगा। – darvids0n