Xcode9 iOS11 ऐप रिलीज़ में CFBundleIconName गुम


96

मैं iOS 11 SDK के साथ निर्मित Xcode 9 का उपयोग करके अपने ऐप का एक नया संस्करण जारी करने के लिए संघर्ष कर रहा हूं। बाइनरी को संग्रहीत करना और अपलोड करना किसी भी मुद्दे के बिना अच्छी तरह से चलता है। बिल्ड आइट्यून्स कनेक्ट अंडर एक्टिविटी में 'प्रोसेसिंग' के रूप में दिखाई देता है और यह गायब हो जाता है और मुझे निम्नलिखित ईमेल वापस मिल जाते हैं।

प्रिय डेवलपर,

हमने आपके "" के लिए हाल ही में वितरण के साथ एक या अधिक मुद्दों की खोज की है। आपके वितरण को संसाधित करने के लिए, निम्न समस्याओं को ठीक किया जाना चाहिए: गुम जानकारी .plist मान - Info.plist कुंजी CFBundleIconName के लिए एक मान बंडल में गायब है ''। एसेट कैटलॉग में आइकन प्रदान करने वाले ऐप्स को यह Info.plist कुंजी भी प्रदान करनी चाहिए। अधिक जानकारी के लिए देखें http://help.apple.com/xcode/mac/current/#/dev10510b1f7 । एक बार जब इन मुद्दों को ठीक कर लिया गया है, तो आप सही बाइनरी को फिर से शुरू कर सकते हैं। सादर, ऐप स्टोर टीम

लिंक परिसंपत्ति बंडलों के बारे में कुछ जानकारी देता है। मैंने प्रोजेक्ट नाम या छवि फ़ाइल नाम के लिए CFBundleIconName कुंजी सेट करने का प्रयास किया और फिर से एप्लिकेशन सबमिट किया। हालाँकि, मुझे अभी भी ऊपर जैसा ही ईमेल मिलता है।

मदद के किसी भी सुझाव की बहुत सराहना की जाएगी।


2
क्या आपने App Icons Sourceअपनी परियोजना सामान्य सेटिंग्स में अपनी संपत्ति सूची में सही ढंग से सेट किया है?
15

1
@vmeyer: लेकिन उन ऐप्स के बारे में क्या है जो एसेट कैटलॉग का उपयोग नहीं करते हैं?
user102008

जवाबों:


80

मैं इस पूरे दिन और रात में संघर्ष कर रहा था और हर उस क्रम में जाने की कोशिश कर रहा था जिसके बारे में मैं सोच सकता था और आखिरकार इस समाधान को पाया - उम्मीद है कि यह किसी को इस बुरे सपने से गुजरने से बचाएगा।

मेरा ऐप पहले xcassets कैटलॉग का उपयोग नहीं कर रहा था, इसलिए मैंने फ़ाइल - न्यू - फ़ाइल ... का उपयोग करके इस समस्या को हल करने के प्रयास में एक को प्रोजेक्ट में जोड़ा था और फ़ाइलों के प्रकारों में से एक एसेट कैटलॉग का चयन करते हुए - मैंने इसे Assets.xcassets नाम दिया था और इसे xcode प्रोजेक्ट में चुना। फिर दाईं ओर के क्षेत्र में दाईं ओर क्लिक किया गया और फिर ऐप आइकॉन और लॉन्च इमेज को जोड़ने के लिए चुना गया फिर न्यू आईओएस ऐप आईकॉन और फिर उसमें मैंने ऐप स्टोर आईओएस 1024 टीपी स्लॉट के लिए मेरी 1024x1024 छवि को अच्छी तरह से खींच लिया, जिसे आपने काम किया होगा। लेकिन मुझे संग्रह करने और स्टोर में जमा करने के बाद भी अस्वीकृत ईमेल मिले।

गुम जानकारी .plist मान - Info.plist कुंजी CFBundleIconName के लिए एक मान बंडल में अनुपलब्ध है। bla bla bla ...

मैंने "आइकन नाम" के लिए Info.plist में कुंजी भी जोड़ी थी, जिसे CFBundleIconName द्वारा भी जाना जाता है और इसे एक स्ट्रिंग फ़ाइल नाम के लिए सेट किया गया है जो परियोजना में मेरी 1024x1024 छवि से मेल खाता है। लेकिन इनमें से किसी ने भी काम नहीं किया, जबकि आईपीए सामग्री की जाँच करने से सब कुछ सही तरीके से दिखा।

अंत में मैंने अपने कैटलॉग से AppIcon को Assets.xcassets नाम से हटा दिया, ताकि यह खाली हो जाए और समस्या को ठीक करने के लिए निम्न कार्य करें:

अपने ऐप के नाम पर क्लिक करके ऐप के लिए मुख्य सेटिंग पर जाएं और फिर ऐप्पल आइकॉन और लॉन्च इमेज सेक्शन के तहत ऐप आइकॉन स्रोत के बगल में स्थित बटन पर क्लिक करें और एसेट कैटलॉग का उपयोग करने के लिए चुनें - अपनी संपत्ति सूची का नाम चुनें - मेरा कहा जाता था Assets.xcassets - और उस पॉपअप पर बटन के साथ एप्लिकेशन को बदलने (माइग्रेट) करने के लिए कहें - मैंने लॉन्च छवियों को परिवर्तित करने के लिए बॉक्स को भी चेक किया - जब आपको ऐप आइकन स्रोत और लॉन्च किए गए चित्र स्रोत का नाम होगा ड्रॉपडाउन सूची में।

इस पर क्लिक करके एसेट कैटलॉग पर जाएं - फिर से मेरा Assets.xcassets था और फिर AppIcon सेक्शन पर क्लिक करें और अपनी 1024x1024 इमेज को ऐप स्टोर iOS 1024pt वेल / स्लॉट में खींचें। पिछली बार अपने ऐप को संग्रहीत करें और इसे ऐप स्टोर में जमा करें - उस बिंदु पर उम्मीद से नरक से ईमेल नहीं मिलेगा क्योंकि मैंने उन्हें आपके ऐप की अस्वीकृति के बारे में कॉल करना शुरू कर दिया था और आप अपना ऐप सबमिट करने के लिए iTunesConnect पर लौट सकते हैं।

सौभाग्य - मैं उस दर्द से सहानुभूति रखता हूं जो आप इस ज्यादातर गुप्त त्रुटि के साथ महसूस कर रहे होंगे जब आपने बहुत सारे उचित सुधारों की कोशिश की थी जो अभी तक पूरा नहीं हुआ। सॉफ्टवेयर इंजीनियर के जीवन में कभी-कभी ऐसा होता है ...;)

अगर यह आसान होता तो हर कोई इसे करता, सही है। ;)


बिल्कुल, यह एक दर्द था और मैंने इसे बहुत शांति से लिंक के माध्यम से पढ़ने के बाद समझ लिया। वास्तव में आपको पिछले ऐप आइकन को हटाने की आवश्यकता नहीं है लेकिन बाएं हाथ के आकार पर यदि आप iPad, iPhone चेकबॉक्स को टॉगल करते हैं, तो आपको सभी आवश्यक आकार मिलेंगे।
एरक्यूब

2
धन्यवाद! लंबे समय से इससे जूझ रहा था! मुझे सिर्फ इतना पसंद है कि Apple त्रुटियाँ कितनी शिक्षाप्रद हैं।
talsharonts

मेरे लिए कुंजी "सामान्य" प्रोजेक्ट टैब से AppIcon Asset जोड़ना था। (विचित्र रूप से, एक नई संपत्ति कैटलॉग बनाने और फिर ऐप आइकन जोड़ने से काम नहीं चला ।)
जेसन मूर

1
इसके लिए शुक्रिया। मैं आईट्यून्स कनेक्ट पर अपलोड किए जा रहे कुछ भी नहीं देख सका, हालाँकि मुझे ऐप स्टोर पर अपलोड करते समय एक सफलता मिल रही थी। बहुत ज्यादा उलझन। यदि आप स्टोर पर अपलोड करते समय कुछ ऐसा छोड़ देते हैं तो आमतौर पर आपको एक त्रुटि मिलेगी।
uplearnedu.com

3
जितना अधिक मैं iOS के लिए विकसित करता हूं उतना ही अधिक मैं उससे नफरत करता हूं।
माइक

62

सरलतम उपाय यह है कि प्लिस्ट में CFBundleIconName कुंजी जोड़ें और संपत्ति सूची में सभी AppIcon स्लाइस भरें।

जानकारी:

<key>CFBundleIconName</key>
<string>AppIcon</string>

यहाँ छवि विवरण दर्ज करें

यहाँ छवि विवरण दर्ज करें

वर्किंग एप्सकॉन एसेट्स यहां डाउनलोड करें


2
इसने मेरे लिए काम किया। आपको बहुत - बहुत धन्यवाद! btw इस पर वी.एस. मैक के लिए काम करता है
एसिडो

1
माता-पिता का टैग अच्छा रहा होगा। अब मुझे यह अनुमान लगाना होगा कि चाबी कहाँ जाती है।
मार्टिन

34

मुझे यह समझ में आया कि चूंकि Xcode 9 iOS 11 बिल्ड को आईट्यून्स कनेक्ट ऐप आइकन को बाइनरी के साथ बंडल करने की आवश्यकता है, जो कि iTunes से जोड़ा जा सकता है जो सीधे Xcode के पुराने संस्करणों में कनेक्ट होता है (XCode 8.3.3 पूर्व में)।

यदि आप अपने ऐप को ऐप स्टोर के माध्यम से वितरित करते हैं, तो ऐप स्टोर आइकन को एक्सकोड प्रोजेक्ट में स्थित संपत्ति कैटलॉग में जोड़ें। प्लेटफॉर्म के आधार पर आइकन का स्थान भिन्न होता है।

IOS और watchOS ऐप के लिए Xcode 8.3.3 और इससे पहले का उपयोग कर बनाया गया है, आप iTunes Connect में ऐप स्टोर आइकन जोड़ते हैं। MacOS और tvOS ऐप के लिए, आप ऐप स्टोर आइकन को Xcode प्रोजेक्ट में जोड़ते हैं, लेकिन एसेट कैटलॉग में स्थान Xcode 9 और बाद में बनाए गए ऐप से अलग है।

आवश्यक ऐप स्टोर आइकन को ऐप बंडल में स्थित एक परिसंपत्ति सूची में रखा जाना चाहिए।

ऐप स्टोर आइकन जोड़ना

तो, CFBundleIconName को अब AppIcon (डिफ़ॉल्ट मान) या आपके द्वारा निर्धारित किसी भी मूल्य पर सेट किया जाना चाहिए।

केवल उस छवि को जोड़ने से आईट्यून्स आर्काइव अपलोड प्रक्रिया पास नहीं होगी, इसलिए हमें निम्नलिखित आकारों के सभी ऐप आइकन छवियों को जोड़ना होगा:

  • 20pt 1x, 2x, 3x
  • 29pt 1x, 2x, 3x
  • 40pt 1x, 2x, 3x
  • 60pt 1x, 2x, 3x
  • 76pt 1x, 2x
  • 83.5pt 2x
  • 1024pt 1x

इसलिए, अब ऐप आइकन निर्दिष्ट करने के लिए एसेट कैटलॉग का उपयोग करने का समय है।


1
मेरे मामले में ( Mac के लिए Xamarin / Visual Studio के साथ बनाया गया पुराना ऐप ) समाधान उतना ही आसान था जितना कि एसेट कैटलॉग में माइग्रेट करना । मेरे पास कहानी बोर्ड के रूप में एक लॉन्च स्क्रीन भी थी, मैं उस परिसंपत्ति सूची में माइग्रेट नहीं कर सकता था, इसलिए मैंने इसे छोड़ दिया। फिर भी इसने मार्केटिंग आइकन के गुम होने की शिकायत की।
फायरपोल

मुझे लगता है कि आपको ऐप आइकन के तहत मार्केटिंग आइकन जोड़ने की आवश्यकता है जो कि 1024pt भी है। यह भी सत्यापित करें कि क्या आप Xcode 9 GM का उपयोग करके बाइनरी अपलोड कर रहे हैं, लेकिन बीटा संस्करण नहीं।
एरक्यूब

1
विजुअल स्टूडियो फॉर्म मैक (एक्स ज़ारारिन स्टूडियो ) संपत्ति में ऐप स्टोर / मार्केटिंग आइकन नहीं दिखाता है, इसलिए मैं इसे यूआई के माध्यम से नहीं जोड़ सका। मैं Xamarin के लिए एक बग प्रस्तुत करेंगे। मैंने क्या किया: संपादित करें Contents.json> के लिए फ़ाइल नाम जोड़ें ios-marketing। मुझे फ़ाइल ImageAssetको csproj फ़ाइल में भी जोड़ना था । इसके अलावा किसी कारण से मेरा iTunesArtwork 2x सही नहीं था (1x के समान का उपयोग करके)। मैंने इसे 1024px फाइल के साथ ओवरराइड किया। परिणामी IPA में icon-marketing.png शामिल नहीं है, लेकिन एप्लिकेशन लोडर के माध्यम से अपलोड ने काम किया। डबल चेक: फिर से w / o मार्केटिंग आइकन की कोशिश की गई, लेकिन itunesartwork fix: मार्केटिंग त्रुटि मिली।
फायरप्लेस

1
यहाँ मैक उपयोगकर्ताओं के लिए xamarin / विज़ुअल स्टूडियो के लिए बग रिपोर्ट: पालन करने के लिए: Bugzilla.xamarin.com/show_bug.cgi?id=59515
12:15 बजे अग्निशमन

15

जब भी मैंने अपने एक ऐप के नए संस्करण के लिए बाइनरी सबमिट किया, मुझे वही ईमेल मिल रहा था। मैंने यहां सूचीबद्ध सभी उपायों की कोशिश की, लेकिन कुछ भी काम नहीं किया। फिर मैंने एक और बदलाव किया जिसने काम किया।

में लक्ष्य। । । सेटिंग्स बनाएँ। । । एसेट कैटलॉग कंपाइलर - विकल्प अनुभाग, यह सुनिश्चित करें कि एसेट कैटलॉग का नाम जिसमें आइकन शामिल हैं एसेट कैटलॉग ऐप आइकन सेट नाम में दिखाया गया है । किसी कारण से, मेरा एसेट कैटलॉग ऐप आइकन सेट नाम रिक्त था।


2
यह मेरे लिए तय हो गया! बिना किसी लाभ के सब कुछ करने की कोशिश की। यह भी समझ में आता है कि जब मैंने एडहॉक बिल्ड के साथ निर्यात किया गया था .ipa पैकेज की जांच की थी और देखा था कि एसेट कंपाइलर को "एसेट कैटलॉग ऐप आइकन सेट नेम" के लिए निर्दिष्ट करने से पहले आइकॉन वहाँ नहीं थे, जिसे हटा दिया गया था xcassets में नाम।
गेमशूट्स

11

IOS 11 या बाद के एसडीके के साथ बनाए गए ऐप्स को एसेट कैटलॉग में ऐप आइकन की आपूर्ति करनी चाहिए और इसके लिए एक मान प्रदान करना होगा Info.plist कुंजी

संपत्ति कैटलॉग के बिना पुरानी परियोजनाओं के लिए ऐपस्टोर में जमा करते समय मुद्दे होंगे

प्रोजेक्ट में -> लक्ष्य गुण - सामान्य टैब-> ऐप आइकन और लॉन्च छवि। ऐप आइकॉन -> सेलेक्ट एसेट कैटलॉग का चयन करें फिर यह अलर्ट के साथ कन्वर्ट (माइग्रेट) करने के लिए कहेगा और एक .xcassets फ़ाइल बनाता है। लॉन्च छवियों को परिवर्तित करने के लिए बॉक्स को भी देखें।
जब आप App Icons Source और Launch Images Source किए जाते हैं तो ड्रॉपडाउन सूची में नाम होंगे। इसमें ऐप आइकन और अन्य आइकन जोड़ें


9

मैंने एक ही मुद्दा प्राप्त किया है और इसे निम्नानुसार हल किया है।

यहाँ कदम से कदम गाइडलाइन है।

चरण 1:

1024 * 1024.png के साथ एक आइकन बनाएं

चरण 2:

इस png को https://www.appicon.build/ वेबसाइट पर अपलोड करें और स्क्रीन पर खींचें और छोड़ें।

यहाँ छवि विवरण दर्ज करें

चरण 3:

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

चरण 4:

अपने प्रोजेक्ट पर वापस जाएं और अपने Xcodeअनकोड प्रोजेक्ट में इस अनज़िप्ड फोल्डर (AppIcon.appconset) को रिसोर्स फ़ोल्डर में जोड़ें।

यहाँ छवि विवरण दर्ज करें

चरण 5:

Asset.xcassetsफ़ोल्डर पर डबल क्लिक करें और उत्पन्न छवियों से 2x और 3x छवियों के लिए छवि प्लेसहोल्डर पर खींचें और ड्रॉप करें।

यहाँ छवि विवरण दर्ज करें

तुम तैयार हो!...


2
Mac App Store पर Icon Set Creator नाम का एक ऐप भी है। क्या काम उतना ही आसान है और यह वेब पर चीजें अपलोड नहीं करता है।
यारोस्लाव

महान पोस्ट, इसने मेरे लिए काम किया और मुझे बहुत समय बचाया, धन्यवाद
19

8

अब IOS 11 में, हमें 1024x1024 आकार की हमारी परियोजना में एक नया आइकन जोड़ना होगा।

सुनिश्चित करें कि स्रोत कोड बंडल में संसाधन फ़ोल्डर से चिह्न फ़ाइलों को हटा दिया जाता है और साथ ही प्रतीक फ़ाइलें भी। info.plist को साफ़ कर दिया जाता है। नीचे दिए गए अनुसार मुट्ठी में CFBundleIconName कुंजी भी जोड़ें

जानकारी:

<key>CFBundleIconName</key>
<string>AppIcon</string>

इसके अलावा प्रोजेक्ट में - टारगेट-> बिल्ड सेटिंग्स -> एसेट कैटलॉग कंपाइलर - सेक्शन, एसेट कैटलॉग में एसेट कैटलॉग ऐप आइकन सेट नाम में दिखाए गए एसेट कैटलॉग का नाम सुनिश्चित करें।


4

उन सभी लोगों के लिए जिन्होंने उपर्युक्त उत्तर देने में मदद नहीं की (इस पर एक अच्छा-सा सिर-दीवार पीटने का खर्च किया):

अपनी संपत्ति निर्देशिका की लक्ष्य सदस्यता की जाँच करना सुनिश्चित करें! यदि आप यहां सदस्यता को सही ढंग से लिंक नहीं करते हैं, तो आपको यह वही सुपर-जेनेरिक त्रुटि मिलेगी (Apple को त्रुटि संदेशों के बारे में कुछ करना चाहिए)।

यहाँ छवि विवरण दर्ज करें

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

आपको प्लिस्ट को बिल्कुल भी संपादित करने की आवश्यकता नहीं है, इनमें से अधिकांश उत्तर भ्रामक हैं।

आशा है कि यह मदद करता है जो इसे हिट करता है!


1
हे भगवान। HOURS को इस समस्या से जूझने के बाद, बस लक्ष्य सदस्यता की जांच करनी थी, जो किसी कारण से, अनियंत्रित थी। बहुत बहुत धन्यवाद।
जीरोगेटो

4

मुझे भी "मिसिंग इंफ़्लॉप। वैल्यू मान" का सामना करना पड़ा है - बंडल के लिए Info.plist कुंजी CFBundleIconName का एक मान गायब है ... " त्रुटि और अगले व्यक्ति की आशा करने के लिए एक संक्षिप्त उत्तर छोड़ना चाहता था।

एप्लिकेशन एक संपत्ति कैटलॉग का उपयोग नहीं कर रहा था। हालाँकि यह नहीं है कि यह त्रुटि क्या कहती है, कि इस समस्या को हल करने के लिए क्या आवश्यक है, लेकिन आप मूल्यों को कैसे जोड़ते हैं यह महत्वपूर्ण है। मैन्युअल रूप से .plist में इस अनुपलब्ध key \ value को जोड़ना पर्याप्त नहीं है; इससे कहीं अधिक है। आपको अपने .plist से CFBundleIcons मान को निकालने की भी आवश्यकता है। यह मैन्युअल रूप से किया जा सकता है, लेकिन मैं प्रोजेक्ट गुण - सामान्य ऐप आइकन और लॉन्च छवि के माध्यम से इसे संपादित करने के लिए XCode इंटरफ़ेस का उपयोग करने की सलाह देता हूं। इसी तरह मुझे काम करने का मौका मिला।

नीचे मेरे .plist में किए गए परिवर्तनों का एक स्क्रीन शॉट है ।

यहाँ छवि विवरण दर्ज करें

ऐप आइकन और लॉन्च छवियां
यहाँ छवि विवरण दर्ज करें

यदि आपके पास पहले से एक नहीं है, तो अपनी परियोजना में एक नया एसेट कैटलॉग जोड़ें।
अपने नेविगेटर विंडो के शीर्ष पर स्थित ऐप नाम पर क्लिक
करें। सामान्य टैब चुनें
"एप्लिकेशन आइकन और लॉन्च इमेज" पर नीचे स्क्रॉल
करें "सेक्शन एसेट कैटलॉग" बटन पर क्लिक करें
नोट: मैंने अपनी संपत्ति कैटलॉग और आईओएस ऐप आइकन छवि बनाई थी सेट, लेकिन मौजूदा के लिए लिंक करना मेरे लिए काम नहीं करता था क्योंकि यह एक नया इमेज सेट बनाता था जिसमें खाली मान \ _ होते थे। मुझे उन सभी को हटाना पड़ा और इस प्रक्रिया को मेरे लिए बनाने दिया। यदि आप अभी इस समस्या को हल करने के लिए एक संपत्ति कैटलॉग जोड़ रहे हैं, तो इस प्रक्रिया को आपके लिए बनाएं, छवि सेट को मैन्युअल रूप से न जोड़ें।

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

अब उस पर क्लिक करके अपनी नई परिसंपत्ति सूची खोलें
और "AppIcon" अनुभाग पर क्लिक करें और अपनी आवश्यक छवियों को उपयुक्त स्थानों पर खींचें।

आपको ऐप स्टोर iOS 1024pt आइकन और किसी अन्य iPhone \ iPad \ Universal ऐप आवश्यक आइकन के लिए 1024x1024 छवि की आवश्यकता होगी। 1024x1024px छवि को विपणन चिह्न के रूप में भी जाना जाता है। आप इसके बिना अपना ऐप सबमिट नहीं कर सकते।

अब आपको अपने ऐप को संग्रहीत करने और ऐप स्टोर में जमा करने में सक्षम होना चाहिए।


3

नीचे दिए गए चरणों का पालन करें।

  1. अपने प्रोजेक्ट में नई फ़ाइल जोड़ें >> एसेट कैटलॉग।
  2. गोटो XCODE >> जनरल >> ऐप आइकन में अपनी परियोजना पर क्लिक करें। स्क्रीनशॉट देखें । यह आपके एसेट के अंदर AppICon और LaunchImage विनिर्देशों को स्वचालित रूप से बनाएगा इसके बाद आप इसमें अपने ऐपस्टोर आइकन और अन्य आइकन को ड्रैग और ड्रॉप कर सकते हैं।

  3. इसके अलावा जोड़ें ।
    <key>CFBundleIconName</key>
    <string>AppIcon</string>

आपकी फ़ाइल में यह प्रविष्टि।

अपनी बायनेरिज़ को Itunes पर अपलोड करें।


(Xcode 9, वर्णित "सामान्य" अनुभाग केवल एक लक्ष्य के लिए प्रकट होता है, न कि एक परियोजना ...)
benc

2

मैं आखिरकार इस समस्या के लिए एक साफ समाधान के साथ आया हूं, जिसमें info.plist जैसे CFBundleIconName की कोई कुंजी जोड़ने की आवश्यकता नहीं है। मैंने एसडीके 11.2 के खिलाफ बनाने के लिए ऐप स्टोर में एक पुराने ऐप को अपडेट करते समय ऐसा किया था (और मुझे विश्वास है कि इसमें निराशा की एक बड़ी मात्रा शामिल थी)। मैं पीसी पर विजुअल स्टूडियो में ज़ामरीन का उपयोग कर रहा हूं, लेकिन यह समाधान किसी अन्य आईडीई या फ्रेमवर्क जैसे एक्सकोड में काम करना चाहिए। समाधान का सार यह है कि info.plist फ़ाइल और संसाधन फ़ोल्डर को अब तक ऐप आइकनों और लॉन्च छवियों के संबंध में कोई भूमिका निभाने की आवश्यकता नहीं है। वास्तव में आप info.plist फ़ाइल से CFBundleIconFiles कुंजी निकाल सकते हैं और इससे आपकी परियोजना पर कोई फर्क नहीं पड़ेगा।

यहां उन चरणों का पालन किया जा सकता है, जिनका आपको पालन करना है:

  1. अपने ऐप आइकन की एक प्रति बनाएं और छवियों को लॉन्च करें और उन्हें एक अलग स्थान पर संग्रहीत करें।
  2. ऐप आइकनों के लिए एक साफ शुरुआत के संदर्भों को हटाएं और info.plist से छवियों को लॉन्च करें, जिसका अर्थ है CFBundleIconForce कुंजी के तहत मान हटाना।
  3. एप्लिकेशन आइकन हटाएं और संसाधन फ़ोल्डर से छवियां लॉन्च करें।
  4. 'एसेट कैटलॉग' के तहत आपके द्वारा घोषित किसी भी 'एसेट्स' या 'मीडिया' को हटाने के लिए डिलीट ऑप्शन का उपयोग करें।
  5. आपकी परियोजना में अभी भी Assets.xcassets या Media.xcassets (या इसी तरह का .xcassets फ़ोल्डर) नाम से एक फ़ोल्डर मौजूद हो सकता है। वे या तो संसाधन फ़ोल्डर के बाहर या अंदर होंगे। सभी .xcassets फ़ोल्डर हटाएं।
  6. अब अपने प्रोजेक्ट फाइल को एक एडिटर जैसे नोटपैड (यानी विजुअल स्टूडियो में .csproj) में खोलें और देखें कि क्या .xcassets फ़ोल्डर में फाइलों की ओर इशारा करते हुए कोई संदर्भ हैं। ऐसे सभी संदर्भ हटा दें। यह भी जांचें कि इस फ़ाइल में संसाधन फ़ोल्डर के अंतर्गत ऐप आइकन या लॉन्च छवियों की ओर इशारा करते हुए कोई संदर्भ नहीं हैं और उन्हें भी हटा दें।
  7. यह सुनिश्चित करने के लिए जांचें कि XSAppIconAssets और XSLaunchImageAssets कुंजियाँ अब info.plist में मौजूद नहीं हैं। यदि वे अभी भी मौजूद हैं, तो उन्हें हटा दें।
  8. इस बिंदु पर आपने अपने ऐप आइकन पर किसी भी पिछली फ़ाइलों या संदर्भों को हटा दिया है और अपनी परियोजना से छवियां लॉन्च की हैं। यदि वे अभी भी मौजूद हैं तो कृपया वापस जाएं और उन्हें हटा दें। अब नई शुरुआत करने के लिए 'एसेट कैटलॉग' के तहत एक नया 'एसेट' या 'मीडिया' बनाएं जो आपके प्रोजेक्ट में एक .xcassets फ़ोल्डर बनाता है। अपने नए .xcassets फ़ोल्डर के अंतर्गत संबंधित फ़ोल्डर में चरण 1 से अपने ऐप आइकन (और यदि आवश्यक हो तो छवियों को लॉन्च करें) को कॉपी करें। सुनिश्चित करें कि सभी आवश्यक चित्र शामिल हैं।
  9. यह सुनिश्चित करने के लिए जांच करें कि जानकारी प्राप्त करें। अब आपके द्वारा बनाए गए नए 'एसेट' के लिए XSAppIconAssets (और यदि आवश्यक हो तो XSLaunchImageAssets) शामिल हैं। आपकी प्रोजेक्ट फ़ाइल (जो विजुअल स्टूडियो में .csproj है) में अब आपके द्वारा अपने नए 'एसेट' में जोड़े गए प्रत्येक चित्र का संदर्भ होना चाहिए। परियोजना के लिए आवश्यक अतिरिक्त छवियों की कोई आवश्यकता नहीं है। मैं आपके एसेट्स से किसी भी अतिरिक्त छवियों को हटाने का सुझाव दूंगा।
  10. यदि आपने CFBundleIconName नाम की एक कुंजी को अन्य समाधानों में उल्लेखित किया है, तो कृपया इस कुंजी को info.plist से हटा दें। इसकी आवश्यकता नहीं है। अब आप अपने ऐप को स्टोर में जमा करने के लिए तैयार हैं।

1

Info.plist को संपादित करने की आवश्यकता नहीं है। आइकन संबंधित त्रुटियों को App.con के लिए सभी छवियों प्लेसहोल्डर्स में images.xcassets में भरकर हल किया जाएगा ।


1

दृश्य स्टूडियो 17 (v-15.2) के साथ एक समस्या थी जब आप इसे संस्करण अद्यतन करते हैं> 15.2 आपको एसेटकॉस्टिक्स> मीडिया> AppIcons में App-Icon-1024x1024 जगह धारक दिखाई देगा

यहाँ छवि विवरण दर्ज करें


क्या आप कुछ संदर्भ दे सकते हैं? निश्चित नहीं कि विज़ुअल स्टूडियो संस्करण इस विषय से संबंधित क्यों हैं ...
benc

1

हर ऐप डेवलपर प्रसिद्ध "आइकन डॉग" का उपयोग करता है

(यह शर्म की बात है कि उन्होंने नाम बदल दिया!)

यहाँ छवि विवरण दर्ज करें

https://itunes.apple.com/us/app/app-icon-set-creator/id1052532083?mt=12

यह दूर है और # 1 सबसे लोकप्रिय एप्लिकेशन iOS देवों द्वारा उपयोग किया जाता है, एक पंथ की तरह।

यह सभी समस्याओं को तुरंत हल करता है।


1

मेरी स्थिति में; आपके द्वारा इस पृष्ठ में इन सभी चीजों को करने के बाद, अपनी परियोजना को फिर से संग्रहित करना न भूलें :)


0

IOS 11 ऐप्स के लिए Xcode 9.2 के लिए, कुछ बिंदुओं को स्पष्ट किया जाना चाहिए।

1- यह त्रुटि एसेट कैटलॉग में आइकन संपत्ति नहीं होने से होनी चाहिए।

(कोई संपत्ति कैटलॉग के साथ एक एप्लिकेशन सबमिट करके इस त्रुटि को प्राप्त करें)।

2- आवश्यक आइकनों के साथ एसेट कैटलॉग जोड़कर इस त्रुटि को हल किया जाता है।

(मेरे मामले में, यह एक iPhone- केवल ऐप था, और मैंने कुछ प्लेसहोल्डर छवियां जोड़ीं जो 120x और 180x थीं)।

3- यह त्रुटि 1024x1024 "ऐप स्टोर आइकन" से संबंधित नहीं है

(जब आप बड़े स्टोर आइकन को भूल जाते हैं, तो एक अलग, विशिष्ट त्रुटि प्रदर्शित की जाएगी, यह त्रुटि नहीं)।

4- Apple प्रलेखन के विपरीत, यहां तक ​​कि (iOS 11 के लिए लिखे गए Xcode 9 +) के साथ, आप ऐप स्टोर आइकन को सबमिट करने के लिए वेबसाइट का उपयोग भी कर सकते हैं।

(ऊपर उल्लिखित अलग विशिष्ट त्रुटि आइकन की कमी से शुरू होती है , प्रस्तुत बिल्ड में आइकन की अनुपस्थिति नहीं)।

5- Info.plist में CFBundleIconName लापता नहीं बदला गया था।


अभाव और अनुपस्थिति में क्या अंतर है? क्या तुम समझा सकते हो?
19

अगर आपने स्टोर एंट्री के लिए पहले से ही एक आइकन सबमिट कर दिया है, तो बिल्ड में आइकन के बिना एक ऐप सबमिट करना काम करेगा ...
benc

0

मुझे इस मामले में भी बहुत सारी समस्याएं थीं - मैं लगातार लापता हुए CFBundleIconName और उस मेरे आइकॉन के साथ त्रुटि प्राप्त कर रहा था जहां नहीं मिला। तो यहाँ मेरी कहानी है, शायद यह किसी के लिए मदद की होगी। वैसे, मैं एक्समरीन के साथ विजुअल स्टूडियो का उपयोग कर रहा हूं।

  1. AppIcons के साथ अपने प्रोजेक्ट में एक एसेट कैटलॉग जोड़ें (संपत्ति का वास्तविक नाम महत्वपूर्ण नहीं है, लेकिन बस यह एप्लिकेशन आइकन के लिए है)। सभी आवश्यक आइकन आकार जोड़ें। 'ऐप स्टोर' आइकन के लिए मैंने एक @ नाम के बिना एक आइकन जोड़ा है जैसा कि सुझाए गए मंचों में किसी ने किया है, लेकिन मुझे यकीन नहीं है, अगर यह 100% आवश्यक है। विभिन्न आइकन आकारों को बनाने के लिए बहुत सारी वेबसाइटें और उपकरण हैं जो आपके लिए कर सकते हैं और आपको केवल 1024x1024 एक प्रदान करने की आवश्यकता है। बाकी वे पैदा करेंगे।

  2. Info.plist में 'Visual Assets' के तहत और फिर 'App Icons' ने आपके द्वारा बनाए गए एसेट को स्रोत सेट किया।

  3. अब अपने Info.plist की जाँच करें। इसे बाहरी संपादक के साथ न खोलें , क्योंकि आपकी परियोजना के निर्माण के बाद आपके सभी परिवर्तन समाप्त हो जाएंगे। निम्न करें - राइट माउस समाधान एक्सप्लोरर में Info.plist पर क्लिक करें और फिर ओपन विथ -> जेनेरिक प्लास्ट एडिटर चुनें।

  4. जाँच करें कि आपके पास निम्न प्रविष्टियाँ हैं:

    -प्रत्यय = CFBundleIconName, प्रकार = स्ट्रिंग। मान = Assets.xcassets / AppIcons.appiconset -Property = XSAppIconAssets, प्रकार = स्ट्रिंग। मान = Assets.xcassets / AppIcons.appiconset

  5. ध्यान दें कि विज़ुअल स्टूडियो स्वचालित रूप से जोड़ता है, जब यह पूरी तरह से कुछ जोड़ता है, तो मान के रूप में 'Resources / Assets.xcassets / AppIcons.appiconset'। लेकिन मेरे मामले में एसेट कैटलॉग संसाधन फ़ोल्डर के बाहर बनाया गया था और इसलिए, मेरे आइकन जहां नहीं मिले। इसलिए, जांचें कि आपकी संपत्ति फ़ोल्डर कहां बनाया गया था।

  6. CFBundleIconFiles की आवश्यकता नहीं थी, क्योंकि Apple अब एसेट कैटलॉग का उपयोग करता है।

मुझे आशा है कि मैं कुछ मदद की थी :)


0

मैंने @Omair द्वारा उत्तर का उपयोग किया और यह ऑन द स्पॉट है, हालांकि, मुझे तब त्रुटियां हो रही थीं कि विभिन्न आइकन नहीं मिले थे। संपत्ति कैटलॉग बनाते समय VS2017 के साथ समस्या एक बग थी। नई संपत्ति कैटलॉग को जोड़ते समय, कैटलॉग फ़ोल्डर प्रोजेक्ट के रूट के तहत बनाया जाता है, न कि / संसाधनों के तहत। हालाँकि, info.plist में प्रविष्टि के तहत / संसाधनों के रूप में पथ है। एक बार जब मैंने अपने एसेट कैटलॉग के रास्ते से / संसाधनों को हटा दिया तो सब ठीक हो गया। आशा है कि यह किसी की मदद करता है!


0

मैं ज़ामरीन के दायरे में जवाब दूंगा इस मुद्दे को ठीक करने के लिए - जो कि समान है लेकिन एक्सकोड के समान नहीं है। VisualStudio समुदाय (16.6 विंडोज / 8.6.1 macOS) का उपयोग करके Xcode 11 को macOS पर स्थापित किया गया

Info.plist में CFBundleIconName जोड़ना कोई मदद नहीं है, यह कुंजी आजकल उपयोग नहीं की जाती है (iOS 11 और इसके बाद के संस्करण को बनाने के लिए, केवल Assets.xcassets का उपयोग किया जाता है - यह Media.xcassets भी हो सकता है, आप जो चाहें चुन सकते हैं, लेकिन मैं इसे Assets.xcassets के रूप में संदर्भित करूँगा)।

मेरा मुद्दा यह था: हालाँकि यह एसेट्स.नैन्सेट्स दृश्य में नेत्रहीन अच्छा था, चित्र सही नहीं थे। जैसे ही मैंने मैन्युअल रूप से उन्हें पुनः प्राप्त करने का प्रयास किया, मेरे पास एक प्रारूप त्रुटि थी।

Xamarin संभाल रहा है, ठीक है ... मान लें कि भ्रमित करने वाला .etspj फ़ाइल में Asset.xcassets है। कभी-कभी सभी सामग्री का वर्णन करने के लिए Contents.json फ़ाइल को संदर्भित करना पर्याप्त नहीं है, आपको हर एक फ़ाइल को भी आयात करना होगा, इसलिए यह पीसी पर काम कर सकता है, लेकिन मैक और इसके विपरीत नहीं। विजुअल स्टूडियो पीसी, विज़ुअल स्टूडियो मैक और एक्सकोड के बीच संपत्ति प्रबंधन में सुधार करने के लिए जगह है।

मैंने सभी आइकन फिर से जेनरेट किए, और एक-एक करके Assets.xcassets व्यू को हाथ से डाला।

इसके अलावा, Info.plist में, आपके पास निम्नलिखित कुंजी होनी चाहिए:

<key>XSAppIconAssets</key>
<string>Media.xcassets/AppIcons.appiconset</string>

फिर मैंने सभी को फिर से बनाया और आवाज दी, यह काम किया।

AppStoreConnect को अपलोड करने से पहले आइकनों को सही तरीके से जनरेट किया जाता है या नहीं, यह देखने के लिए टिप को IPA उचित आइकॉन मिला या नहीं यह जांचने के लिए Xcode-> ऑर्गनाइजर टूल में सिमुलेटर पर तैनात है। अन्यथा यह देव "नो आइकन" है, और यह ठीक नहीं होगा।

इसके अलावा, ऐप आइकन जनरेशन के लिए कुछ वेबसाइटें मेरी ज़रूरत की सभी चीज़ों से युक्त नहीं हैं। अंत में, मैंने इसे त्वरित परीक्षणों के लिए इस्तेमाल किया (लेकिन मैं स्थानीय उपकरण पसंद करता हूं - ऊपर देखें): https://www.iconsgenerator.com/Home/AppIcons

इसके अलावा, क्योंकि आप लॉन्चिमेज के बिना अपलोडिंग जारी कर सकते हैं (स्टोरीबोर्ड से संबंधित है, और यह भी Asset.xcassets में संग्रहीत है, ऐप आइकन और लॉन्च इमेज दोनों पीढ़ी की अनुमति देने वाला एक अद्भुत ऐप है: https://github.com/raphaelhanneken-iconizer


0

मेरे मामले में मुद्दा यह था कि मेरे पास ऐप स्टोर मार्केटिंग आइकन (1024x) के लिए PNG इमेज थी,

आपको इस ऐप स्टोर आइकन (1024x) के लिए jpeg, गैर-पारदर्शी छवि का उपयोग करना होगा, और समस्या दूर हो गई।


0

ऊपर कुछ भी मेरे लिए काम नहीं किया। मुझे Development Assetsबिल्ड सेटिंग्स से मान निकालने की आवश्यकता थी ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.