मेरे पास वर्तमान में एक ही ऐप (विभिन्न ब्रांडिंग और ऐसे) के 3 अलग-अलग संस्करणों के साथ एक प्रोजेक्ट है, जो ठीक काम कर रहा है। तब से मैंने 3 नए ऐप्पल वॉच लक्ष्य (प्रत्येक ऐप "संस्करण" के लिए 1) जोड़ा है, जहां उनमें से 2 "मास्टर" ऐप्पल वॉच लक्ष्य में फ़ाइलों का संदर्भ देते हैं।स्टोरीबोर्ड कस्टम मॉड्यूल संदर्भों को बदलने के लिए ऐप्पल वॉच प्री-बिल्ड एक्शन
सबकुछ ठीक काम करता है जब तक कि मुझे प्रत्येक स्टोरीबोर्ड दृश्य के लिए मॉड्यूल संदर्भ बदलने की याद आती है, ताकि यह संबंधित घड़ीकिट एक्सटेंशन लक्ष्य में सही इंटरफ़ेस नियंत्रक के लिए मानचित्र हो।
हालांकि, हर बार जब मुझे एप संस्करण/लक्ष्य चलाने/निर्माण करने की आवश्यकता होती है, तो यह एक दर्द है और वास्तव में एक दीर्घकालिक समाधान नहीं है।
मैंने निम्न आदेश बनाया है जिसे मैं सही समय पर चलाने के लिए चाहता हूं, जैसे कि यह संकलित होने से पहले स्टोरीबोर्ड संदर्भों को बदलता है।
perl -pi.bak -e 's/customModule=\"(.*?)\">/customModule=\"watchMyTarget_Extension\">/g' ${SRCROOT}/watch/Base.lproj/Interface.storyboard
मैं भी निष्कर्ष निकाला है कि मैं शायद बदलाव को रीसेट करना के बाद एप्लिकेशन संकलित किया गया था, के बाद से मैं Git बारे में शिकायत करने के लिए एक फ़ाइल परिवर्तन नहीं करना चाहती चाहते हैं। यही कारण है कि उपरोक्त स्क्रिप्ट एक .bak फ़ाइल बनाता है। तो बाद संकलन किया है और पैक किया जाता है/उपकरण या जो कुछ भी पर चलाने के लिए, मैं चलाने के लिए
mv ${SRCROOT}/watch/Base.lproj/Interface.storyboard.bak ${SRCROOT}/watch/Base.lproj/Interface.storyboard
मैं लक्ष्य के (watchTarget, नहीं appTarget) योजना का निर्माण, Build->Pre/Post Actions
ये नही किया में स्क्रिप्ट रखने की कोशिश की है चाहता हूँ प्रतीत होता है कि कोई प्रभाव पड़ता है। और मैंने इसे Run->Pre/Post Actions
में डालने का प्रयास किया जो कुछ हद तक काम करता था, लेकिन ऐसा लगता है कि एप को सिम्युलेटर पर धक्का दिया गया था और इस प्रकार एप्लिकेशन को दुर्घटनाग्रस्त कर दिया गया था ("डिवाइस लॉग नहीं देख सका" या ऐसा कुछ)।
तो पृथ्वी पर जहां मुझे इन स्क्रिप्ट को निर्माण प्रक्रिया में सही समय पर चलाने की आवश्यकता है?
मैंने सफलता के बिना यह कोशिश की है। मुझे इसे पहले और बाद में चलाने के लिए चलाने की आवश्यकता है।चूंकि मैं घड़ी के लक्ष्य को शुरू करने से पहले घड़ी स्टोरीबोर्ड को बदलना चाहता हूं, और उसके बाद इसे – tskulbru
@tskulbru बनाया गया है इसे साफ करने के बाद इसे वापस लेना है, आपको संग्रह के बाद इसे करना चाहिए, संग्रह के बाद के कार्यों में क्लीनअप कमांड डालें । – Allen
मैंने अपनी मुख्य ऐप बिल्ड स्कीम से क्लीनअप के लिए बिल्ड/आर्काइव इत्यादि के पोस्ट-एक्शन का उपयोग करने की कोशिश की लेकिन कुछ कारणों से ऐसा लगता है कि यह देर से पर्याप्त नहीं था और बदलावों को घड़ी ऐप में वापस शामिल किया गया था, जो तब इंस्टॉल करने में विफल रहा क्योंकि यह इंस्टॉल नहीं हुआ सही परिवर्तन है। – tskulbru