2015-05-06 11 views
7

मैं वर्तमान में उन परियोजनाओं पर काम कर रहा हूं जिनमें बहुत कुछ (10+) लक्ष्य हैं। यह एक सफेद ब्रांडेड ऐप है, प्रत्येक लक्ष्य एक ग्राहक को समर्पित है, सभी लक्ष्य सटीक कोड साझा करते हैं लेकिन विभिन्न संसाधनों को संकलित करते हैं (.xcsassets विशेष रूप से)।ऐप्पल वॉच, कई लक्ष्य और साझा वॉचकिट एक्सटेंशन/वाटकिट ऐप लक्ष्य

मैं अपनी परियोजना में ऐप्पल वॉच को एकीकृत करना चाहता हूं, बस घड़ी पर अधिसूचनाएं सक्षम करने के लिए भी। इसमें 2 लक्ष्य, वॉचकिट एक्सटेंशन और ऐप जोड़ने की आवश्यकता है। (नोटा: वॉचकिट ऐप लक्ष्य को ऐपआईकॉन के उत्तराधिकारी के लिए संबंधित आईफोन ऐप की तुलना में उसी .xcassets से जोड़ा जाएगा)।

हालांकि यह केवल कुछ लक्ष्यों के साथ एक परियोजना के लिए ठीक है, यह वास्तव में मेरे मामले में व्यावहारिक नहीं है। कई नई फाइलें बनाई गईं, मेरे सबवर्जन फ़ोल्डर्स में प्लस करें, और लक्ष्य की सूची को वास्तव में विशाल बनाएं।

क्या मेरे सभी ग्राहकों को उन 2 अतिरिक्त लक्ष्यों को साझा करना संभव होगा? क्या वॉचकिट ऐप/एक्सटेंशन लक्ष्य मिलान (लक्ष्य नाम, बंडल आईडी इत्यादि अपडेट करना) स्क्रिप्ट/आईओएस लक्ष्य को स्वचालित रूप से बनाने के लिए स्क्रिप्ट का उपयोग करके संभव है?

कोई भी विचार स्वागत से अधिक होगा।

+0

घड़ी किट 1 विस्तार और घड़ी किट के लिए डुप्लिकेट लक्ष्य 1 घड़ी ओएस 2 लक्ष्यों के साथ अनुप्रयोग। अब सभी नए लक्ष्यों के लिए बंडल पहचानकर्ता बदलें। इसके अलावा आप बदल नहीं पाएंगे नए लक्ष्य को प्रासंगिक ऐप में मैन्युअल रूप से जोड़ें। यदि आप समझ में नहीं आते हैं तो मुझे बताएं, मैं एक ट्यूटोरियल तैयार करूंगा। –

+0

क्या आपको यह काम मिल गया?मैं सिर्फ एक ही चीज की कोशिश कर रहा हूं लेकिन कहीं एक लम्बे बंडलेड लगता है (इसे खोज के साथ भी नहीं मिला) – tskulbru

+0

मेरे पास एक समान प्रश्न है। AFAIK, एक्सकोड मुझे निर्माण के लिए एक्सटेंशन का चयन करने का विकल्प भी नहीं दे रहा है – user210504

उत्तर

0

आप बंडल आईडी को नियंत्रित करने के लिए कॉन्फ़िगरेशन और उपयोगकर्ता परिभाषित सेटिंग्स का उपयोग कर घड़ी निर्भर लक्ष्य प्लिस्ट को नियंत्रित कर सकते हैं। मान लीजिए कि आपके पास 10 लक्ष्य हैं और आपको घड़ी ऐप बनाने की आवश्यकता है, फिर प्रत्येक मुख्य ऐप के लिए बंडल आईडी को प्रोजेक्ट सेटिंग (लक्ष्य के लिए विशिष्ट नहीं) के तहत उपयोगकर्ता सेटिंग में परिभाषित करें, जिससे आप दो नाम लक्ष्य के साथ उस लक्ष्य को अपने लक्ष्य में विस्तारित कर सकें।

लक्ष्य एक के लिए उदाहरण के लिए, आप BUNDLE_A_ID as com.company.a के रूप में बंडल आईडी परिभाषित आप अपनी घड़ी लक्ष्यों में एप्लिकेशन लक्ष्य, $(BUNDLE_A_ID).watchapp or $(BUNDLE_A_ID).watchappextension में $(BUNDLE_A_ID) के रूप में बंडल आईडी का उपयोग कर सकते हैं ताकि आप प्रत्येक लक्ष्य में बंडल आईडी परिभाषित करने की जरूरत नहीं है, इन की अपनी परिभाषा सेटिंग एक स्थान (परियोजना सेटिंग) के साथ बंधेगी।

0

सावधानी: इस समाधान को आजमाने के लिए अपनी परियोजना की प्रति बनाएं या नई शाखा बनाएं।

मुझे यह पता चला कि इसे कैसे ठीक किया जाए। मुझे लगता है कि आपके पास एक आईओएस ऐप काम कर रहा है और एक ऐप्पल घड़ी ऐप काम कर रहा है और आपको कोड दोहराने के बिना और ऐप्पल घड़ी ऐप्स जोड़ने की जरूरत है।

चरण 1: फ़ाइल/नई/लक्ष्य "WatchOS" टैब का चयन करें और फिर "WatchKit अनुप्रयोग" का चयन करें एप्लिकेशन का चयन करें तो आप इस नए एप्पल घड़ी एप्लिकेशन लिए क्लिक करें अगला

चरण 2 के साथ करना चाहते हैं लिंक: अपने नए एप्पल घड़ी अनुप्रयोग के लिए बनाया गया है और नए फ़ोल्डर में देखो सब * .swift हटा सकते हैं और * .storyboard

चरण 3: .storyboard और अपने मुट्ठी एप्पल घड़ी अनुप्रयोग के .swift फ़ाइलों कि मूल रूप से काम कर रहा था का चयन करें और आपको उन्हें नई और पुरानी लक्ष्य सदस्यता असाइन करनी चाहिए। भविष्य में, आपकी सभी घड़ी ऐप फ़ाइलों में उन लक्ष्यों का चयन होना चाहिए।

enter image description here

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