यह link है मैं मैक ओएसएक्स और आईओएस कीचेन्स का उपयोग एनएसयूसर डीफॉल्ट के रूप में आसान बनाने के लिए किया गया है।
यह मैक OSX और आईओएस Keychains के चारों ओर एक KVO अनुरूप कोको आवरण है, और इस आवरण NSUserDefaults है के लिए मॉडल है, इसलिए मंशा है कि आम मामलों के लिए आप सामान्य रूप से कॉल करना चाहते हैं:
[NSUserDefaultsController sharedUserDefaultsController]
आप और
[PDKeychainBindingsController sharedKeychainBindingsController]
कॉल करने के लिए सक्षम होना चाहिए आम मामलों के लिए आप सामान्य रूप से कहा जाता है |:
[NSUserDefaults standardUserDefaults]
आप कॉल करने के लिए
[PDKeychainBindings sharedKeychainBindings]
कार्यान्वयन के बीच मतभेद की एक जोड़ी रहे हैं सक्षम होना चाहिए। सबसे पहले, यह वर्ग केवल तारों के लिए मान्य है, क्योंकि कीचेन स्वीकार करता है, इसलिए गैर-स्ट्रिंग ऑब्जेक्ट्स (जैसे सरणी और शब्दकोश और जैसे) लेने वाली विधियां कक्षा से छोड़ी गई हैं। दूसरा, अभी, केवल "तत्काल मोड" लागू किया गया है, इसलिए आप मानों का एक गुच्छा सेट नहीं कर सकते हैं और फिर केवल एक ही लिखने के लिए "सेव" पर कॉल कर सकते हैं, और "सहेजे गए मानों पर वापस लौटें" कार्यक्षमता नहीं है)।
हाय आपके त्वरित उत्तर के लिए धन्यवाद ... लेकिन मुझे इसमें कोई संदेह है ... ... मुख्य श्रृंखला में संग्रह करते समय सुरक्षित है लेकिन अनइंस्टॉल किए गए राज्य के दौरान मुख्य श्रृंखला में पासवर्ड नहीं हटाया जाएगा, फिर मैं कैसे इसे बनाए रखें? – Spynet
भले ही ऐप हटा दिया गया हो और पासवर्ड कुंजीपटल में रखा गया हो, यह सुरक्षित है। ऐप हटा दिए जाने पर कीचेन से इसे हटाने का कोई तरीका नहीं है। यदि कुछ भी हो, तो पासवर्ड तब तक जारी रहेगा जब तक कि आपका ऐप दोबारा इंस्टॉल नहीं हो जाता। कोई भी इसका उपयोग नहीं कर सकता है या इसे देख सकता है। –
@Spynet: यह एक मुद्दा होगा, आप अपने NSUSerDefault में केवल एक ध्वज जोड़कर इसे दूर कर सकते हैं। जब आवेदन चल रहा है तो पहले बूल की जांच करें। बूल इंगित करता है कि पासवर्ड कीचेन में सहेजा जाता है। –