2016-08-16 8 views
6

साथ आवेदन लोडर का उपयोग कर एक ऐप अपडेट जमा करने के बाद, मैं एप्पल से इस ईमेल मिला:"अवैध स्विफ्ट समर्थन SwiftSupport फ़ोल्डर याद आ रही है" Xcode 7.3.1

हम साथ एक या अधिक मुद्दों की खोज की है आपके "[ऐप नाम]" के लिए हालिया डिलीवरी। अपनी डिलीवरी को संसाधित करने के लिए, निम्नलिखित मुद्दों को को सही किया जाना चाहिए:

अमान्य स्विफ्ट समर्थन - स्विफ्टस्पोर्ट फ़ोल्डर गुम है। अपने ऐप को एक्सकोड के वर्तमान सार्वजनिक (जीएम) संस्करण का उपयोग करके पुनर्निर्माण करें और इसे दोबारा सबमिट करें।

इन मुद्दों को ठीक करने के बाद, आप सही बाइनरी को फिर से वितरित कर सकते हैं।

मैंने पुष्टि की है कि यह बाइनरी नवीनतम एक्सकोड जीएम (7.3.1) के साथ बनाया गया था, इसलिए यह मुद्दा नहीं है। मैंने ऑनलाइन इस समस्या के लिए विभिन्न प्रकार के संभावित सुधारों को देखा है, लेकिन उम्मीद कर रहे थे कि आगे के विवरण देने से कोई भी मुझे विशिष्ट समाधान को समझने में मदद कर सकता है।

  • कोई समस्या नहीं के साथ एप्लिकेशन लोडर 3.5 का उपयोग कर आईपीए फ़ाइल सबमिट की गई।
  • ऐप का पिछला संस्करण स्विफ्ट का उपयोग नहीं करता है, लेकिन यह अद्यतन करता है।
  • "एम्बेडेड सामग्री में स्विफ्ट कोड शामिल है" बिल्डिंग सेटिंग NO पर सेट है। My understanding यह है कि यह केवल YES होना चाहिए यदि हमारे पास शुद्ध उद्देश्य-सी लक्ष्य है जो स्विफ्ट या मिश्रित लक्ष्य पर निर्भर करता है।
  • परियोजना कोकोपोड्स का उपयोग करती है, लेकिन इस अद्यतन के लिए हमारे फली में कुछ भी नहीं बदला है।
  • ऐप के पिछले संस्करण में वॉचकिट ऐप और एक्सटेंशन शामिल था, लेकिन यह अद्यतन नहीं है।
  • उसी निर्माण के साथ उत्पन्न xcarchive के अंदर, SwiftSupport फ़ोल्डर वहां है। इसमें iphoneos नामक सबफ़ोल्डर शामिल है जिसमें libswiftFoundation.dylib जैसे कई ऐप्पल स्विफ्ट पुस्तकालय शामिल हैं।
  • अगर मैं .zip करने के लिए .ipa फ़ाइल का नाम बदलने और यह संग्रह से निकालने, अपने ऐप का पैकेज एक SwiftSupport फ़ोल्डर शामिल नहीं है, लेकिन एक ही स्विफ्ट dylibs के साथ एक Frameworks फ़ोल्डर शामिल है।

उत्तर

7

यहां समाधान this answer में था। हमें पुराने -exportFormat और -exportWithOriginalSigningIdentity झंडे के बजाय xcodebuild के साथ नए -exportOptionsPlist ध्वज का उपयोग करने की आवश्यकता थी। प्लिस्ट को method कुंजी सेट app-store पर सेट करने की आवश्यकता है।

+0

बहुत बहुत धन्यवाद! मेरे * :) – itsdamslife

+0

को सहेजा गया जहां मुझे इस कुंजी को प्लेलिस्ट फ़ाइल में बदलना है, कृपया मदद करें। – vaibhav

+1

आपको प्लिस्ट फ़ाइल में कोई कुंजी बदलने की आवश्यकता नहीं है। आपको कमांड लाइन पर '-exportOptionsPlist' ध्वज का उपयोग करने की आवश्यकता है, जो एक प्लेलिस्ट फ़ाइल का पथ लेता है। उस प्लेस्ट (एक नई फ़ाइल) को 'एप-स्टोर' पर मान सेट के साथ 'विधि' कुंजी' रखने की आवश्यकता है। – Luke

0

मेरे मामले में, मैंने अभी परियोजना में अनावश्यक स्विफ्ट फ़ाइल जोड़ दी है और इससे समस्या हल हो गई है।

0

आईपीए फ़ाइल बनाने के समय आपको "विज्ञापन के लिए सहेजें परिनियोजन" विकल्प के बजाय "आईओएस ऐप स्टोर परिनियोजन के लिए सहेजें" चुनना चाहिए। enter image description here

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