2013-02-12 28 views
6

मेरे पास ऐप-स्टोर में एक एप्लिकेशन है। मेरे आवेदन में मैं कुछ मूल्यों को सहेजने के लिए कीचेन का उपयोग करता हूं (उदाहरण के लिए: नाम & उपनाम) क्रिप्ट के रूप में। यदि मैं अपने ऐप को अपडेट करने के लिए एक्सकोड का उपयोग करता हूं, तो मूल्यों के बारे में कोई समस्या नहीं है। जैसा कि मैं चाहता हूं वे सभी चाबी में सहेजे गए हैं। लेकिन अगर मैंने ऐप-स्टोर में नया संस्करण डाला है और ऐपस्टोर में मौजूद संस्करण के साथ अपना ऐप अपडेट किया है, तो मेरे मान सभी चले गए हैं :(यदि ऐप अपडेट किया गया है तो आईओएस कीचैच में मान हटा देता है?ऐप अपडेट होने के बाद कीचैन में रखे गए मूल्यों को सहेजा जा सकता है?

+0

के लिए

चेक आप एक ही AppId, वितरण प्रमाण पत्र के साथ अद्यतन वितरण और प्रोफ़ाइल प्रावधान या कुछ बदल दिया है? –

+0

मैंने ऐप के नए संस्करण को ऐपस्टोर में वितरित नहीं किया क्योंकि जब मैं xCode MyValues ​​के साथ नया संस्करण स्थापित करने का प्रयास करता था। यदि आप पूछते हैं कि प्रोफ़ाइल अलग हैं या नहीं? हाँ वे हैं। क्योंकि सबसे पहले मैंने स्टोर से और वितरण प्रोफाइल के साथ स्थापित किया था, इसलिए मैंने इसे एक्सकोड का उपयोग करके डेवलपर प्रोफाइल के साथ अपडेट किया। मुझे इस तरह अपना ऐप प्रकाशित करने से डर है क्योंकि यदि मूल्य खत्म हो गया है तो मेरा ऐप बेकार है :( –

उत्तर

4

नोट: आईफोन पर, कीचेन अधिकार provisioning profile पर निर्भर करता है जो आपके आवेदन पर हस्ताक्षर करने के लिए उपयोग किया जाता है। अपने आवेदन के विभिन्न संस्करणों में लगातार same provisioning profile का उपयोग करना सुनिश्चित करें। अधिक जानकारी Keychain Services Programming Guide

+0

मेरा उत्तर जांचें मैं प्रमाण पत्र प्रोफाइल के बारे में नहीं कह रहा हूं प्रमाणपत्र – Rajneesh071

+0

धन्यवाद राजनीश :) –

+0

आपका स्वागत @MehmetAKYOL – Rajneesh071

1

ऐप की कीचेन अद्यतन के दौरान किसी भी माध्यम से हटाया या बदला नहीं जा सकता है। यदि आप इसका अनुभव करते हैं, तो आपको कुछ गलत करना होगा (ऊपर जोआचिम के प्रश्न देखें)

(असल में ऐप को हटाने से आईओएस 4.x में इसकी कीचेन नहीं हटाई गई, जो सामान्य रूप से नहीं होना चाहिए। मैंने जांच नहीं की है कि बाद में आईओएस संस्करणों में यह सुधार हुआ है या नहीं।)

इसके अलावा, कीचेन एप्लिकेशन के फाइल सिस्टम का हिस्सा नहीं है, इसलिए एक अद्यतन नहीं होगा सीटी इसकी सामग्री। कीचेन एक केंद्रीय, सुरक्षित डेटाबेस से संबंधित है (वास्तव में यह एक विशेष sqlite3 डीबी है)। अधिक जानकारी के लिए ऐप्पल के आईओएस सुरक्षा दस्तावेज़ में "कीचेन डेटा प्रोटेक्शन" अध्याय देखें: http://www.apple.com/ipad/business/docs/iOS_Security_Oct12.pdf

एक निष्कर्ष के रूप में: ऐप अपडेट के बाद आपके ऐप की कीचेन अपरिवर्तित रहेगी।

1

सरल उत्तर नहीं है। जब आपका ऐप अपडेट किया जाएगा तो KeyChain में संग्रहीत आपका डेटा हटाया नहीं जाता है। आप KeyChain से इसकी कुंजी-मूल्य जोड़ी का उपयोग कर डेटा प्राप्त कर सकते हैं।

आशा है, यह सरल उत्तर आपकी मदद कर सकता है।