2012-06-25 15 views
5

खरीदा है, जब कोई उपयोगकर्ता इन-ऐप खरीद करता है तो मुझे वैश्विक चर सेट करने की आवश्यकता होती है। मैं NSUserDefaults का उपयोग कर सकता हूं, और केवल "खरीदा" नामक एक कुंजी है, लेकिन यह बहुत सुरक्षित प्रतीत नहीं होता है।आईओएस इन-ऐप खरीदारियां - यह बताने का सबसे अच्छा तरीका है कि उपयोगकर्ता ने

सबसे अच्छा तरीका है सुरक्षित रूप से डाटा स्टोर करने की ताकि मुझे पता है या नहीं, उन कोई खरीदारी की है क्या है?

किसी विशेष दृश्य में मुझे पता है या नहीं, एक "खरीद" बटन प्रदर्शित करने के लिए की जरूरत है उदाहरण के लिए

। जाहिर है कि अगर वे पहले ही खरीदारी कर चुके हैं तो इसे छुपाया जाना चाहिए।

उत्तर

3

सुरक्षित डेटा के लिए आप आईओएस कीचेन उपयोग करना चाहिए। यहाँ प्रलेखन है:

http://developer.apple.com/library/mac/#documentation/Security/Conceptual/keychainServConcepts/iPhoneTasks/iPhoneTasks.html

आशा इस मदद करता है।

+0

मुझे नहीं लगता कि यह आईओएस के लिए मदद करता है। – soleil

+1

यकीन है कि यह करता है। आईओएस पर कीचेन मौजूद है, और यह आंकड़ों को संग्रहित करने का सबसे सुरक्षित मूल तरीका है। कोई उपयोगकर्ता आसानी से इस डेटा को संपादित करने में सक्षम नहीं होगा, इसलिए कीचेन में डेटा संग्रहीत करना सबसे अच्छा और सबसे सुरक्षित तरीका है। – C0deH4cker

0

कि जानकारी स्टोर करने के लिए कोई जरूरत नहीं है। सभी उपयोगकर्ता खरीद को पुनर्स्थापित करने के लिए एक तरीका है। restoreCompletedTransactions के लिए देखो।

आप अपने दृश्य में सब कुछ उपयोगकर्ता के खरीद की जांच कर सकते हैं और फिर सभी आइटम अभी भी खरीदा जा सकता है कि के लिए "खरीद" बटन को दिखाते हैं।

अद्यतन:

ओह! मैंने आपके प्रश्न को गलत समझा। उपर्युक्त विधि आपको उदाहरण के लिए ऐप पुनर्स्थापित करने के मामले में उपयोगकर्ता द्वारा खरीदी गई खरीदारियों को प्राप्त करेगी। अपने प्रश्न के संबंध में, उपयोगकर्ता को सामान, स्तर या जो भी उसने भुगतान किया है, उसे NSUserDefaults में खरीदे गए उत्पादों से संबंधित जानकारी को स्टोर करना पूरी तरह ठीक है।

मैं कदम ट्यूटोरियल है कि मुझे अपने सभी सवालों के जवाब देने एप्लिकेशन के अंतर्गत खरीदी लागू मदद की this कदम सलाह देते हैं।

+0

यह काम तब भी करेगा जब उपयोगकर्ता इंटरनेट से कनेक्ट न हो? – soleil

+0

नहीं, यह नहीं होगा, लेकिन उपयोगकर्ता कुछ भी खरीद नहीं पाएगा या कीमतों जैसी कोई अन्य जानकारी पुनर्प्राप्त नहीं कर पाएगा, इसलिए यह दिखाने में कोई बात नहीं है कि कौन से आइटम खरीदे जा सकते हैं। यदि कोई इंटरनेट कनेक्शन नहीं है तो बस उपयोगकर्ता को सूचित करें और अपने बटन अक्षम रखें। –

+0

हां, लेकिन अगर वे एक दिन खरीद करते हैं, और कुछ समय बाद ऐप पर वापस आते हैं और कनेक्शन नहीं है, तो इंटरफ़ेस अभी भी उन्हें दिखाने में सक्षम होना चाहिए कि उन्होंने पहले ही खरीदारी की है और उन्हें उपयोग करने की अनुमति दी है नई कार्यक्षमता। मुझे किसी भी तरह से स्टोर करने में सक्षम होना चाहिए। – soleil

संबंधित मुद्दे

 संबंधित मुद्दे