/ / objectForKeyedSubscript: iOS 5.1 पर दुर्घटना - उद्देश्य-सी, ios5, ios6

ऑब्जेक्टफॉरकेडस्क्रिप्टस्क्रिप्ट: आईओएस 5.1 पर क्रैश - उद्देश्य-सी, आईओएस 5, आईओएस 6

मैं कुछ कोड चला रहा हूँ जो एक [NS सह वस्तु ऑब्जेक्टफ़ॉरबेडस्क्रिप्ट:] करता है और यह iOS 5 पर क्रैश हो रहा है, लेकिन iOS 6 नहीं। मैं xcode 4.5.2 का उपयोग कर रहा हूँ और iOS 6.0 SDK के विरुद्ध संकलन कर रहा हूँ।

मैंने मान लिया कि यह iOS 5 पर काम करेगायह सिर्फ एक संकलक सुविधा है? क्या मैं इसके बारे में गलत हूं? मैं सिर्फ उन कार्यों के अपने संस्करण लिख सकता हूं, लेकिन मुझे चिंता है कि कुछ और गलत है क्योंकि मैं इसे काम करने की उम्मीद करूंगा।

उत्तर:

जवाब के लिए 3 № 1

Apple डेवलपर में IOS के लिए NS सहकर्मी संदर्भ

IOS 6.0 और बाद में उपलब्ध।


जवाब के लिए 2 № 2

ठीक है, मैं अपने स्वयं के सवालों का जवाब देने जा रहा हूं, हालांकि मैं पूरी तरह से समझ नहीं पाया कि यह क्यों विफल हो रहा था।

का उपयोग करते हुए objectForKeyedSubscript: और आईओएस 5 में ठीक काम करता है (जब तक इसे आईओएस 6 एसडीके के खिलाफ संकलित किया गया था)।

समस्या यह थी कि मुझे एक समारोह का नाम दिया गया था +(void)load और बना रही है objectForKeyedSubscript: इस फ़ंक्शन में कॉल विधि नहीं मिलने के कारण मुखरता का कारण बनती है।

यह मेरी ओर से एक नामकरण त्रुटि थी क्योंकि ऐप पूरी तरह से चलने से पहले लोड विधि कहा जाता है। मैंने अपने फंक्शन का नाम बदल दिया है और सब ठीक है।

मुझे लगता है कि NS सहकर्मी के साथ कुछ पूर्ण होने से पहले + लोड को बुलाया जा रहा है अजीब है कि यह iOS 6 के तहत काम करता है और सिर्फ iOS 5 के लिए नहीं।

शायद यह अजीब नहीं है।


जवाब के लिए 0 № 3

पूर्व iOS6 SDKs के लिए वर्कअराउंड है

चेकआउट प्रश्न यहाँ: क्या Xcode 4.4 में स्वच्छ उद्देश्य-सी शाब्दिक अनुक्रमण सुविधा पाने का कोई तरीका है?