मैं एक ही एक्सकोड परियोजना के भीतर अपने आईफोन एप्लिकेशन के 2 संस्करण रखने की कोशिश कर रहा हूं। कोडबेस यह लगभग समान है और जहां मुझे अलग-अलग व्यवहार करने की आवश्यकता है, मैंने प्रीप्रोसेसर की सशर्तताओं और ${TARGET_NAME}
टैग का उपयोग करने का निर्णय लिया है।मैं एक्सकोड पर अपने आईफोन ऐप के TARGET_NAME को कैसे देखूं?
मैंने OTHER_CFLAGS
को "-DTARGET_NAME=${TARGET_NAME}
" रखने के लिए सेट किया है। TARGET_NAME
के बाद से परिभाषित किया गया है:
तब मेरे कोड में मैं
#if TARGET_NAME == myApp
NSLog(@"pro");
#elif TARGET_NAME == myAppLite
NSLog(@"lite");
#endif
करने के लिए दुर्भाग्य से मैं हमेशा "लाइट" TARGET_NAME == myApp
के बाद से बाहर मुद्रित यह हमेशा सच है की कोशिश की। मैं अपने जीवन के लिए यह नहीं समझ सकता कि इस स्ट्रिंग तुलना का मूल्यांकन कैसे किया जाए। कोई विचार? अग्रिम
क्या आपका मतलब यह नहीं है कि आप हमेशा "प्रो" मुद्रित हो जाते हैं क्योंकि 'TARGET_NAME == myApp' हमेशा सत्य है? – Marty