2012-01-23 14 views
11

मैंने debugpreview और release के लिए अपनी परियोजना में three different configurations सेट अप किया है। एक्सकोड में नहीं प्रति कॉन्फ़िगरेशन अलग-अलग .xconfig फ़ाइलों को निर्दिष्ट करने का विकल्प है। अब मैं सोच रहा हूं कि किस परिस्थितियों में उन्हें इस्तेमाल किया जाना चाहिए/उनका उपयोग किया जा सकता है और build settings प्रति कॉन्फ़िगरेशन को संपादित करने के उनके फायदे क्या हैं। आप अपने आप को आपके द्वारा बनाए गए प्रत्येक परियोजना के लिए एक ही निर्माण की सेटिंग बदल पाते हैं.xcconfig फ़ाइलों का उपयोग कब करें

उत्तर

8

उपयोग xcconfig फ़ाइलें। Xcconfig फ़ाइल में बदल रहे बिल्ड सेटिंग्स को रखें। एक xcconfig फ़ाइल का उपयोग करके आप हर बार जब आप कोई प्रोजेक्ट बनाते हैं तो उन बिल्ड सेटिंग्स को संपादित करने से बच सकते हैं।

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

+0

प्रो टिप: यदि आप इन फ़ाइलों के अंदर '#include" shared.xcconfig_include "' उपयोग कर सकते हैं रिहाई/डिबग फाइलों में साझा विकल्प शामिल करने के लिए। –

2

एक तरह से मैं xcconfig का उपयोग किया है फ़ाइलों iPhone एप्लिकेशन के लिए अलग-अलग BundleId के स्थापित करने के लिए है। इस तरह आप विभिन्न सुविधाओं/सर्वर सक्षम के साथ अलग-अलग ऐप्स रख सकते हैं। बहुत उपयोगी। इसमें BundleId के लिए एक चर नाम का उपयोग करना शामिल है।

+3

क्या आप शायद एक उदाहरण जोड़ सकते हैं? – Besi

5

यह मुझे जो आपको एक उदाहरण @Besi के बारे में पूछा लेकिन क्यों BundleId परिवर्तन कम से कम मेरे लिए उपयोगी है मैं समझाता चाहते हैं नहीं है।

जब मेरे पास "विकास", "विज्ञापन होक", "ऐप स्टोर" के लिए अलग-अलग आवश्यकताएं हैं, उदाहरण के लिए मुझे पुश अधिसूचनाएं भेजने की आवश्यकता है, इसलिए पुश प्रमाणपत्र संस्करण के आधार पर अलग होगा।

इस मामले मैं 3 अलग XCode योजनाओं बना सकते हैं और चुने हुए योजना पर निर्भर करता है, जब बंडल पहचानकर्ता संकलन इतना संस्करण का एक अलग तरह का परिणाम देगा बदल होगा।

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

क्षमा करें अगर यह बहुत ही गड़बड़ है, तो मैंने प्रक्रिया में मूल प्रश्न का उत्तर देने का प्रयास किया।

+0

एक्सकोड योजना के आधार पर आप बंडल पहचानकर्ता को वास्तव में कैसे बदलते हैं? प्री-बिल्ड एक्शन? – Legoless

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