2011-12-31 16 views
9

मैंने Google पर खोज करने की कोशिश की, और इसका अर्थ यह जानने के लिए सचमुच कोई परिणाम नहीं मिला। मेरे कंसोल प्रवेश करने जाता है:अस्पष्ट NSZombie कंसोल लॉग

objc[17048]: Class _NSZombie_GEOLatLng is implemented in both ?? and ??. One of the two will be used. Which one is undefined. 
objc[17048]: Class _NSZombie_GEOLatLng is implemented in both ?? and ??. One of the two will be used. Which one is undefined. 
objc[17048]: Class _NSZombie_GEOLocation is implemented in both ?? and ??. One of the two will be used. Which one is undefined. 
objc[17048]: Class _NSZombie_GEOLocation is implemented in both ?? and ??. One of the two will be used. Which one is undefined. 

किसी को भी करने से पहले इस देखा, या इसका क्या मतलब है किसी भी विचार है, क्या यह पैदा, और अगर यह एक समस्या है?

+1

क्या आपके पास कोई तरीका है जिसमें टेक्स्ट GEOLatLng का सबस्ट्रिंग है? यदि कोई हो तो अपना प्रासंगिक कोड साझा करें? यदि आप इसके साथ परीक्षण कर रहे हैं तो NSZombieEnabled के बिना परीक्षण करने का प्रयास करें। – Krishnan

उत्तर

5

मैंने इसे देखा है। विशेष रूप से, ओएस एक्स पर - लेकिन कारण एक जैसा होना चाहिए। GEOLocation (और अन्य) को दो छवियों में परिभाषित किया गया है जो प्रक्रिया में लोड हो गए हैं।

हैं कि एक वर्ग आप ने लिखा है, वर्ग 'प्रतीकों (हालांकि संभावना एक लिंकर त्रुटि होगा ...), कई वस्तु फ़ाइलों में परिभाषित कर रहे हैं जुड़ा हुआ पुस्तकालयों, भरी हुई बंडलों में, या के कुछ संयोजन थे - जब कोड हो सकता है गतिशील रूप से लोड किया गया।

यदि यह कोई वर्ग नहीं है जिसे आपने लिखा (या संश्लेषित), कक्षा के निर्माता के साथ एक बग फ़ाइल करें।

यह भी संभव है कि कक्षा आपके ऐप में परिभाषित की गई हो, और एक लिंक्ड लाइब्रेरी में भी परिभाषित किया गया हो। उस घटना में, आपको अपनी कक्षा का नाम बदलना होगा।

यह निश्चित रूप से एक समस्या है। कक्षा (उस नाम के साथ) को ओबीजेसी रनटाइम में दो बार लोड किया जा रहा है, और इस बात की कोई गारंटी नहीं है कि ओब्जेक एक फ्लैट नेमस्पेस का उपयोग करने के बाद एक इंस्टेंस बनने पर कार्यान्वयन कब किया जाएगा।

इस मामले में, वर्ग सिस्टम ढांचे में मौजूद है इसलिए ... इसे बग रिपोर्टर को भेजें - इसे तुरंत ठीक किया जाना चाहिए।

+0

GEOLocation और GEOLatLng किसी भी कक्षा में नहीं हैं जिन्हें मैंने परिभाषित किया है। ऐसा लगता है कि वे किसी भी बाहरी पैकेज में उपयोग नहीं कर रहे हैं (एसबीजेसन और एएसआईएचटीटीपी)। क्या इसका मतलब यह एक लिंकर त्रुटि होना चाहिए? पहली नज़र में, ऐसा लगता है कि लिंकिंग में कोई समस्या नहीं है। क्या आपके पास कोई सुझाव है कि मुझे कहां देखना चाहिए? – Mason

+0

@ मेसन हां। अंत में, मैंने कहा कि वे सिस्टम ढांचे द्वारा परिभाषित/उपयोग किए जाते हैं। आपको ऐप्पल के साथ एक बग फाइल करना चाहिए। उन्हें आपके द्वारा लिंक की जाने वाली लाइब्रेरीज़, एक ओएस संस्करण जो इस त्रुटि का उत्पादन करता है, और इसे पुन: पेश करने के लिए आवश्यक किसी भी अन्य कदम को बताएं। – justin

0

मेरे पास यह अस्पष्ट संदेश था और देखा कि परियोजना से एनआईबी हटा दिया गया था, लेकिन कोड अभी भी इसका उपयोग कर रहा था। आप यह जांचना चाहेंगे कि अभी भी उपयोग में आने वाले बंडल से कोई संसाधन हटा दिया गया है या नहीं।

2

यह एक हानिकारक चेतावनी है जो तब होती है जब आपने बिल्ड योजना में ज़ोंबी चेतावनियां सक्षम की हैं। आप इसे अनदेखा कर सकते हैं।

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