मुझे यह पता लगाने में परेशानी हो रही है कि NSUserDefaults
मेरे ऐप के लिए लाइब्रेरी/प्राथमिकताओं में जंक प्लेस्ट फ़ाइलों को क्यों छोड़ रहा है।NSUserDefaults मेरे ऐप के लिए लाइब्रेरी/प्राथमिकताओं में अस्थायी प्लिस्ट फ़ाइलों को क्यों छोड़ रहा है?
मैं निम्न फ़ाइलों को दिखाई दे रहा है ...
com.mycompany.myapp.plist
com.mycompany.myapp.plist.3gaPYul
com.mycompany.myapp.plist.c97yxEH
... आदि plist.*
फ़ाइलों 0 बाइट्स हैं। ऐसा लगता है कि हर बार ऐप चलाया जाता है, यह पीछे एक नया छोड़ देता है। मैंने सुनिश्चित किया है कि मैं -[NSUserDefaults synchronize]
पर कॉल नहीं कर रहा हूं, हालांकि अगर मैं इसे कॉल करता हूं, तो यह किसी दिए गए रन के लिए जंक फाइलों की उपस्थिति को तेज करता है। एक डीबगर में कदम उठाने के साथ ही, जैसे ही मैं सिंक्रनाइज़ करने के लिए कॉल पर कदम उठाता हूं, एक नई फ़ाइल दिखाई दी है। अगर मैं सिंक्रनाइज़ कॉल करता हूं, तो ऐप से दूसरी बार ऐप शुरू होने पर एक नई जंक फ़ाइल दिखाई देती है।
मैं यह देखने के लिए भी जांच कर रहा हूं कि शायद मैं थ्रेड पर उपयोगकर्ता डिफ़ॉल्ट सेट कर रहा हूं (संभावना नहीं है, लेकिन शायद एक संभावना है), सोचा था कि दस्तावेज़ कहते हैं कि यह थ्रेड सुरक्षित है।
किसी भी मदद की सराहना की है। धन्यवाद!
संपादित करें:
बस पाया इस: "क्यों" CFPreferences creates multiple files
जब मैं answerers विचार से सहमत हैं, यह स्पष्ट नहीं होता अंश।
यह बहुत पागल है; अगर आपको कभी पता चल जाए तो मुझे बताएं क्यों! –
मेरे पास एक ही समस्या है, अस्थायी plists वास्तव में आईपैड को पूरी तरह से भरने के समाप्त होने के साथ (कई जीबी का प्रतिनिधित्व करने वाली हजारों ~ 4 एमबी फाइलें)। निश्चित रूप से एक आईओएस बग की तरह दिखता है। – quentinadam