2012-09-26 15 views
12

डॉक्स यह योजनाओं के बारे में कहते हैं से:समझ Xcode योजनाओं

"एक Xcode योजना लक्ष्य का निर्माण करने का एक संग्रह को परिभाषित करता है जब निर्माण, एक विन्यास का उपयोग करने के लिए, और लिए परीक्षण का एक संग्रह पर अमल।"

इसलिए मैंने सोचा कि मैं एक डीबग योजना और एक रिलीज योजना तैयार करता हूं और तदनुसार परियोजना और लक्ष्यों के लिए बिल्ड सेटिंग्स सेट करता हूं, यानी रिलीज योजना के लिए वितरण प्रोफाइल का उपयोग करना और डीबग के लिए विकास प्रोफ़ाइल का उपयोग करना।

लेकिन जब मैं विभिन्न योजनाओं का चयन करता हूं तो ये सेटिंग्स परिवर्तित नहीं होती हैं। असल में जब मैं वितरण पर कोड हस्ताक्षर सेट करता हूं तो यह रहता है - विभिन्न योजनाओं में स्विचिंग कुछ भी नहीं बदलेगी।

स्पष्टीकरण के लिए बहुत धन्यवाद!

उत्तर

21

आप कॉन्फ़िगरेशन और योजनाओं को भ्रमित कर रहे हैं। एक्सकोड परियोजनाओं में दो बिल्ड कॉन्फ़िगरेशन हैं: डीबग और रिलीज। बिल्ड सेटिंग्स संपादक में, आप डीबग और रिलीज बिल्ड कॉन्फ़िगरेशन के लिए बिल्ड सेटिंग्स को अलग-अलग मान दे सकते हैं। डीबग और रिलीज कॉन्फ़िगरेशन के मान दिखाने के लिए बिल्ड सेटिंग के बगल में प्रकटीकरण त्रिकोण पर क्लिक करें। आपके उदाहरण में आपको निर्माण सेटिंग संपादक में कोड साइनिंग पहचान निर्माण सेटिंग मिल जाएगी। डीबग बिल्ड कॉन्फ़िगरेशन के लिए अपनी विकास प्रोफ़ाइल में कोड साइनिंग पहचान निर्माण सेटिंग का मान सेट करें, और इसे रिलीज़ बिल्ड कॉन्फ़िगरेशन के लिए वितरण प्रोफ़ाइल पर सेट करें।

डीबग और रिलीज बिल्ड कॉन्फ़िगरेशन के लिए बिल्ड सेटिंग्स सेट करने के बाद, उपयोग करने के लिए बिल्ड कॉन्फ़िगरेशन चुनने के लिए स्कीम संपादक का उपयोग करें। स्कीम एडिटर में निम्न क्रियाएं हैं जहां आप बिल्ड कॉन्फ़िगरेशन चुन सकते हैं: रन, टेस्ट, प्रोफाइल, विश्लेषण, और आर्काइव। एक्सकोड शुरू में प्रोफाइलिंग, परीक्षण और विश्लेषण के लिए डीबग कॉन्फ़िगरेशन का उपयोग करता है और प्रोफाइलिंग और संग्रहण के लिए रिलीज कॉन्फ़िगरेशन का उपयोग करता है। रन एक्शन वह है जिसे आप अपने ऐप को विकसित करने के दौरान बदल सकते हैं।

ज्यादातर मामलों में आप एक योजना से दूर हो सकते हैं। आपको आमतौर पर एक डीबग योजना और एक रिलीज योजना की आवश्यकता नहीं होती है। मुख्य कारण आपको एक डीबग और एक रिलीज स्कीम की आवश्यकता होगी यदि आपको डीबग और रिलीज बिल्ड कॉन्फ़िगरेशन दोनों के लिए अपने ऐप को चलाने, परीक्षण करने, प्रोफ़ाइल करने और विश्लेषण करने की आवश्यकता है।

+0

आप डीबग संग्रह क्यों करेंगे? संग्रहित न करें ताकि आप अपना निर्माण टेस्टफाइट पर दे सकें? – Honey

+0

मैं एक डीबग बिल्ड संग्रह नहीं करूँगा। मैंने जवाब अपडेट किया। –

3

एक्सकोड 7 (कम से कम) योजनाओं में ऊपर दिए गए स्वीकृत उत्तर के विपरीत निश्चित रूप से अपनी खुद की डीबग और रिलीज सेटिंग्स को बनाए रखें। आप अलग डीबग को बनाए रख सकते हैं और "स्कीम" जारी कर सकते हैं और शॉर्टकट कंट्रोल-कमांड-बाएं/दाएं ब्रैकेट (पिछली/अगली योजना) का उपयोग करके दोनों बिल्डों के बीच तेज़ी से स्विच करने के लिए उनका उपयोग कर सकते हैं।

इसका लाभ एक रिलीज और डिबग बिल्ड के बीच तेजी से आगे बढ़ने में सक्षम हो रहा है जब परिष्कृत प्रदर्शन परीक्षण करते समय। रिलीज ऑप्टिमाइज़ेशन के साथ बनाता है जो हमेशा के लिए ले जाता है और स्टैक निशान आदि के साथ गड़बड़ करता है।