2012-06-22 15 views
8

एप्पल परीक्षकों दिशानिर्देश का उल्लंघन करने के कारण हमारे एप्लिकेशन को अस्वीकार कर दिया गया है का कारण बनता है:NSUserDefaults एप्लिकेशन अस्वीकार

[2.23 Apps का आईओएस डाटा स्टोरेज दिशानिर्देश या वे अस्वीकार कर दिया जाएगा का पालन करना होगा]

के बाद से हमारे पास NSURLIsExcludedFromBackupKey ध्वज के बिना हमारी डेटाबेस फ़ाइलों को संग्रहीत किया गया - यह iCloud में बैक अप लिया गया था - और अस्वीकार कर दिया।

तो, हमने NSURLIsExcludedFromBackupKey हमारी फ़ाइलों में ध्वज जोड़ा, और यह iCloud में संग्रहीत डेटा की मात्रा में कमी आई।

लेकिन हमें एहसास हुआ कि NSUserDefaults भी iCloud में कुछ जगह लेता है। हम [NSUserDefaults standardUserDefaults] का उपयोग कर रहे हैं और हमारे पास इसका अधिक नियंत्रण नहीं है।

अगर हम device->settings->iCloud->Storage & BackUP->Manage Storage पर जाते हैं, हम देख सकते हैं कि हमारे एप्लिकेशन को अभी भी क्योंकि NSUserDefaults का उपयोग करने का iCloud में डेटा के 0.5 केबी लेता है,। (कोड 0 के लिए यह कम हो जाएगा में NSUserDefaults का उपयोग करता है को हटाने - कोई डेटा)

एप्पल फिर से हमारे एप्लिकेशन को अस्वीकार कर देंगे के लिए NSUserDefaults iCloud में डेटा लेता है?

+0

नहीं, यह अपेक्षा की जाती है कि एप्लिकेशन 'एनएसयूसर डीफॉल्ट' का उपयोग करेंगे, आपकी अन्य फाइलें कितनी जगह ले रही थीं और उन्हें कहां रखा गया था? – danielbeard

+0

ऐप ने 2.4 एमबी स्पेस का इस्तेमाल किया। अब यह 0.4kb से 0.8kb के बीच लेता है। – igoren

+0

अब मैं कोड में एक चेतावनी देख सकता हूं: चेतावनी: कॉपी बंडल संसाधन निर्माण चरण में इस लक्ष्य की डोननो-इन्फो.प्लिस्ट फ़ाइल 'डोननो-इन्फो.प्लिस्ट' शामिल है। मैं देखता हूं कि उसने बंडल से प्लेस्ट की प्रतिलिपि बनाई है। हमने पहले ही ऐप्पल को ऐप भेजा है, क्या आपको लगता है कि वे उस कारण से ऐप को अस्वीकार कर देंगे? (यह NSUserDefaults स्थान की मात्रा को दोगुना कर सकता है) .. – igoren

उत्तर

3

आप अपने ऐप में NSUserDefaults में किसी भी डेटा का उपयोग कर सकते हैं और आपको अस्वीकार नहीं किया जाएगा। मुझे यकीन नहीं है कि इसके लिए अधिकतम डेटा क्या है, लेकिन मुझे ऐप्पल को एक सीमा निर्दिष्ट करने की याद नहीं है। हालांकि iCloud डिफ़ॉल्ट सेटिंग्स की सीमा है। आप iCloud पर अपने NSUserDefaults का बैक अप ले सकते हैं, लेकिन वहां सहेजे गए डेटा के लिए सख्त 1 एमबी सीमा है। इसलिए सावधान रहें कि वहां सहेजे जाने पर आपका डेटा कितना बड़ा हो जाता है।

+1

लेकिन NSUserDefaults भी मनमाने ढंग से डेटा संग्रहण के लिए नहीं है। यह केवल वरीयताओं और सेटिंग्स के लिए है। – uchuugaka

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