dyld`__abort_with_payload: बिना किसी त्रुटि संदेश के


85

जब मैं XCode के साथ अपना ऐप शुरू करता हूं, तो मेरे पास एक दुर्घटना है, लेकिन कोई त्रुटि नहीं है

ऐप केवल इस थ्रेड पर रोक रहा है

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

समस्या के बारे में अधिक जानकारी के लिए मैं क्या कर सकता हूं?

जवाबों:


107

यदि आप कस्टम फ्रेमवर्क का उपयोग कर रहे हैं, तो आपको इसे टैब टारगेट / जनरल के तहत Xcode प्रोजेक्ट में स्थित "एंबेडेड बायनेरिज़" अनुभाग के अंदर रखना होगा।


1
मेरे पास एक कस्टम ढांचा है और यह Xcode प्रोजेक्ट में "एंबेडेड बायनेरिज़" के तहत लक्षित> जनरल के तहत सूचीबद्ध है। मुझे यह समस्या तब भी हो रही है जब मैं अपनी यूनिट परीक्षण चलाने की कोशिश कर रहा हूं। मैंने हाल ही में अपने कोड के स्विफ्ट भागों को स्विफ्ट 3 (2 से) में अपग्रेड किया है। अगर वह मदद करता है ...
मारियो ए गुज़मैन

@MarioAGuzman आपने इसे कैसे ठीक किया? मैं स्विफ्ट 3 माइग्रेशन के बाद भी इस मुद्दे का सामना कर रहा हूं
iOS

@iOS दुर्भाग्य से मेरे पास कोई वास्तविक सुधार नहीं था। समस्या Xcode 8.3 के साथ ही हल हो गई थी जो अभी जारी की गई थी।
मारियो ए गुज़मैन

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

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

59

मेरे लिए एक सरल Cleanऔर Rebuildइसे हल किया। आशा करता हूँ की ये काम करेगा।


81
स्वच्छ, स्वच्छ बिल्ड फ़ोल्डर, हटाए गए डेटा फ़ोल्डर की सामग्री को हटा दें, पॉड स्थापित करें (जहां उपयुक्त हो), Xcode को पुनरारंभ करें, मशीन को पुनरारंभ करें; फिर अच्छे उपाय के लिए दरवाजे पर कुछ भेड़ के बच्चे का खून
बहाना

1
मेरी भी मदद की !!
दिमित्री Greh

निर्देशिका को हटाने और गिट से अंतिम प्रतिबद्ध होने में मदद नहीं मिली, लेकिन स्वच्छ और पुनर्निर्माण ने मदद की lol

8
मेरे मामले में, मुझे अपने दरवाजे के फ्रेम पर मिर्च और नींबू बाँधना था।
नरेश

1
मुझे अपने पहले पैदा हुए बेटे की भी बलि देनी पड़ी लेकिन यह काम कर गया!
एंडोरा नेमेथ

25

यहां छवि विवरण दर्ज करेंमैकओएस 10.15.2 बीटा तक सिस्टम अपडेट के बाद यह समस्या दिखाई दी। "थ्रेड सैनिटाइज़र" को अक्षम करने से समस्या हल हो गई (Xcode 11.2)। अब मैं थ्रेड सैनिटाइज़र का उपयोग नहीं कर सकता हूं और अगले ओएस अपडेट के लिए इंतजार करना होगा।


6
यह पोस्ट मूल सवालों के जवाब देता है जब मैक 10.15.2 में अपग्रेड करने के बाद Xcode 11.3 सिमुलेटर में समस्या उत्पन्न होती है। ऐसा लगता है कि Apple बग, मंचों को
Vadim Motorine

19

एंबेडेड बाइनरी एसेट लिस्ट में फ्रेमवर्क को जोड़कर इसे तय किया। यहाँ एक विदेशी फ्रेमवर्क का सेटअप एंबेडेड फ्रेमवर्क के रूप में Xcode GUI में अंतिम रूप में कैसा दिखता है (Xcode 9.2, व्यक्तिगत रूप से मुझे एक दृश्य ब्रेड क्रम्ब ट्रेल बेहतर; ;-)) पसंद है: यहां छवि विवरण दर्ज करें

क्या Apple जानबूझकर रनटाइम को किसी भी तरह से समस्या के बारे में डेवलपर को बता रहा है कि आप गैर-ऐप्पल फ्रेमवर्क का उपयोग नहीं कर सकते हैं क्योंकि आईओएस विकास में बस जुड़े फ्रेमवर्क हैं? बेहतर होगा कि इसे एक बिल्ड एरर के रूप में सामने लाया जाए जो मुझे लगता है ... एक बटन के साथ जिसने कहा "इसे स्थानांतरित करें!"

एंबेडेड बायनेरिज़ का उपयोग आपके ऐप से स्वतंत्र रूप से फ्रेमवर्क जोड़ने के लिए अंतिम उपयोगकर्ता को रखता है (या आपके पास इंस्टॉलर के साथ है)। IPhone (iOS) के मामले में, यह असंभव है, लेकिन macOS पर, यह संभव है, लेकिन तेजी से गड़बड़ हो सकता है।

अंत उपयोगकर्ता के लिए, यह केवल मैकओएस पर स्थापित करने के लिए एक ऐप को खींचने और छोड़ने के लिए बहुत अच्छा है, जो कि एम्बेडेड है जहां एक लाभ बन जाता है। एंबेडिंग भी आपके ढांचे के बाहरी संस्करणों को प्रबंधित करने के क्लासिक "डीएलएल संघर्ष" से बचा जाता है। (डिस्क स्थान सस्ता है, मेरे ग्राहक का समय कीमती है)।


छोटा अपडेट। Xcode 10.1 अब आपको "लिंक बाइनरी विद लाइब्रेरीज़" सेक्शन से कस्टम फ्रेमवर्क को ड्रैग करने की अनुमति देता है, जहाँ यह डिफ़ॉल्ट रूप से "कॉपी बंडल रिसोर्सेस" सेक्शन में जाता है, जहाँ इसे होने की आवश्यकता होती है ... यह अब केवल संदर्भ की प्रतिलिपि नहीं बनाता है। लेकिन इसे भी स्थानांतरित करता है। स्क्रीन शॉट यहां: stackoverflow.com/questions/24993752/…
विलियम सर्नियुक

13

मैंने अभी अपने प्रोजेक्ट में त्रुटि को ठीक किया!
यदि आप ऑब्जेक्ट-सी प्रोजेक्ट में स्विफ्ट फ्रेमवर्क का उपयोग कर रहे हैं, तो मैं आपको बिल्ड सेटिंग्स को बदलने की सलाह देता हूं।
हमेशा यस के लिए स्विफ्ट स्टैंडर्ड लाइब्रेरी विकल्प एम्बेड करें। इस तरह:यहां छवि विवरण दर्ज करें

आशा है कि यह आपके लिए उपयोगी था।


यह मेरे लिए काम किया भले ही (जाहिरा तौर पर) मेरी परियोजना में कोई स्विफ्ट कोड नहीं है।
जिम

XCode को वापस मान में बदल गया और मैं इसके बारे में भूल गया था। धन्यवाद :)
SeikoTheWiz

13

आखिरकार हल हो गया!

मेरे लिए जो काम किया गया वह "आवश्यक" के बजाय रूपरेखा को "वैकल्पिक" बनाना था।

उम्मीद है की वो मदद करदे!


सुपर मैन, मैंने इस समस्या से 1,5 दिनों तक संघर्ष किया। यहां तक ​​कि यह अच्छा मैट्रिक्स twitter.com/isupportmatrix इसे मेरी तरफ से भी आवश्यक हल करने के लिए बदल रहा है पाया गया
स्विफ्ट 2 जीईके

और यह भी फाइल में सेटिंग के साथ ही काम करता है -> प्रोजेक्ट सेटिंग्स-> लिगेसी बिल्ड सिस्टम
स्विफ्ट २ जेके

10

Xcode 11.1 off बंद करें Do not Embed, Embed & Signएक अच्छा विकल्प है।

0

222

धन्यवाद @mkonovalov, @William Cerniuk


1
मेरे लिए काम किया। +1
अभिमुखीधरन

1
अनिवार्य रूप से यह कदम आप अपने कस्टम ढांचे को अपने ऐप में एम्बेड करने की कोशिश कर रहे हैं।
आकाश भारद्वाज

6

1) निष्पादन को जारी रखें यह देखने के लिए कि क्या कोई संदेश डिबगर में दिखाई देता है जैसे कि "MyFramework.framework" नहीं मिला। यदि ऐसा है, तो इस चर्चा का पालन करें: OS X फ्रेमवर्क लाइब्रेरी लोड नहीं: 'इमेज नहीं मिली' मेरे लिए यह जवाब काम किया: https://stackoverflow.com/a/44796734/4060763

2) सुनिश्चित करें कि आपने "बायनेरिज़ बायनेरिज़" अनुभाग के माध्यम से अपने बायनेरिज़ को जोड़ा है।

3) सुनिश्चित करें कि आपने निर्माण चरण अनुभाग में चौखटे पर हस्ताक्षर करने में सक्षम किया है।

4) सुनिश्चित करें कि एम्बेडेड फ्रेमवर्क सीमलिंक नहीं हैं।

5) आप "लिंक बाइनरी विद लाइब्रेरीज़" चरण में आवश्यक के बजाय लिंक किए गए चौखटे को वैकल्पिक बना सकते हैं। यह आईओएस को लॉन्च के दौरान इन रूपरेखाओं की तलाश नहीं करने के लिए बताएगा। लेकिन वैसे भी आपको उन रूपरेखाओं का उपयोग करने के लिए त्रुटियों को ठीक करने की आवश्यकता है!

6) जांचें कि क्या सभी info.plist प्रविष्टियां अच्छी हैं। मेरे मामले में, मैं iOS के लिए मैक info.plist फ़ाइल का उपयोग कर रहा था। यह कुछ xib फ़ाइल की तलाश में था जो iOS प्रोजेक्ट में मौजूद नहीं थी।

7) इस तरह के किसी भी परिवर्तन के बाद एक साफ और निर्माण करें। यह आवश्यक है क्योंकि xcode इन फ़ाइलों को कॉपी / परिवर्तित नहीं करता है यदि वे पहले से मौजूद हैं।

8) ऐप को iPad से निकालें और फिर इंस्टॉल करें। समान कारण 7।


6

डायग्नोस्टिक्स में "गार्ड मॉलोक" को अनचेक करना मेरे लिए काम कर गया। सेटिंग्स के लिए छवि देखें


2
Guard Malloc, सही होना। किसी को पता है कि यह दुर्घटना को ठीक क्यों करता है?
Mojo66

1
आप प्रोजेक्ट को साफ करने का प्रयास भी कर सकते हैं और फिर दोबारा चला सकते हैं या बस Xcode पुनः आरंभ कर सकते हैं। इस तरह की त्रुटियां केवल कष्टप्रद हैं और Xcode में कीड़े की तरह हैं
करणवीर सिंह

5

मूल प्रश्न का उत्तर देने के लिए "मैं इस मुद्दे के बारे में अधिक जानकारी के लिए क्या कर सकता हूं?", यह Apple फोरम थ्रेड एक बहुत ही सरल टिप प्रदान करता है: बस अपने दुर्घटनाग्रस्त ऐप को XCode के बाहर चलाएं (अर्थात इसे XCode से रोकें, फिर इसे मैन्युअल रूप से अपने पर चलाएं डिवाइस)। यह एक दुर्घटना लॉग का उत्पादन करेगा, जो कि हुआ। फिर आप XCode विंडो मेनू / डिवाइस और सिमुलेटर से इस लॉग की समीक्षा कर सकते हैं -> डिवाइस लॉग देखें।


4

मैं बस जानकारी में "गोपनीयता - कैमरा उपयोग विवरण" को लागू करने से चूक गया था।

पता नहीं अगर यह जानकारी किसी और को मदद करती है, हालांकि ...


4

मुझे Xcode 11.3 और macOS Catalina 10.15.2 के साथ एक ही मुद्दे का सामना करना पड़ा। ऐप डिवाइस का अच्छा चल रहा था लेकिन सिम्युलेटर पर नहीं। ऐसा लगता है कि सिम्युलेटर के साथ कोई समस्या है और थ्रेड सेनिटाइज़र को अक्षम करने के लिए समाधान है।

संदर्भ: https://forums.developer.apple.com/message/397978#397978

उम्मीद है की यह मदद करेगा।


3

मुझे एक ही हस्ताक्षर के साथ एक त्रुटि का सामना करना पड़ा (मेरी परियोजना ओब्ज-सी में थी) और मुझे पता चला कि मैं उचित रूपरेखा के साथ लिंक करना भूल गया था। डिबग लॉग में त्रुटि संदेश जिसके कारण त्रुटि मिली थी:

dyld: प्रतीक नहीं मिला: _OBJC_CLASS _ $ _ SFSafariViewController

मेरी विशिष्ट त्रुटि के लिए, Target में SafariServices.framework को जोड़ते हुए -> चरण बनाएँ -> "लिंक बाइनरी विद लाइब्रेरीज़" ने समस्या को हल किया। यदि आपके पास संभवतः एक ही विशिष्ट त्रुटि और संकल्प नहीं है, तो सुराग के लिए डिबग लॉग की जाँच करना उपयोगी है।


2

मैं इस स्थिति को अपडेट करने के बाद v10.2.1 को vcode और v5.0 के लिए स्विफ्ट कर चुका हूं। यदि आप कार्टेज + आरएक्सविफ्ट का उपयोग कर रहे हैं तो नया आरएक्सस्विफ्ट उपयोग करता है RxRelay.framework। आपको अपने / कार्टेज / बिल्ड डायरेक्टरी में जाना चाहिए और उस फ्रेमवर्क को ढूंढना चाहिए और उसे अपने प्रोजेक्ट में शामिल करना चाहिए। इसे भी अपनी carthage copy-frameworksस्क्रिप्ट में न भूलें : $(SRCROOT)/Carthage/Build/iOS/RxRelay.framework

हल करने के लिए धन्यवाद: https://stackoverflow.com/a/52550148/2493555


1

यदि आप ऑब्जेक्टिव-सी एप्लिकेशन में स्विफ्ट में लिखे फ्रेमवर्क का उपयोग कर रहे हैं, तो आपको ऐप में स्विफ्ट टूलचैन को शामिल करना होगा जो फ्रेमवर्क का उपभोग करता है।

जिस तरह से मैंने ऐसा करने के लिए पाया है वह ऐप में एक डमी स्विफ्ट फ़ाइल बनाने के लिए है ताकि एक्सकोड स्विफ्ट को पहचान सके और उचित रूप से प्रोजेक्ट में जोड़ सके। फिर आप डमी फ़ाइल को हटा सकते हैं।

मुझे अच्छा लगेगा अगर कोई व्यक्ति किसी उद्देश्यपूर्ण-सी परियोजना में स्पष्ट रूप से स्विफ्ट फ़ाइल जोड़ने के बिना स्विफ्ट को जोड़ने का एक बेहतर तरीका जानता था।


1

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


1

मुझे इसे हल करने का सही तरीका मिल गया है।

सुनिश्चित करें कि AppleWWDRCA.cerसेट सिस्टम डिफ़ॉल्ट मोड हो, तो यह काम करेगा:

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


मेरे लिए भी काम किया।
dev_shanghai

1

मैं उसी मुद्दे का सामना कर रहा था। मेरे लक्ष्य के लिए बिल्ड सेटिंग्स में 'ऑलवेज एंबेड स्विफ्ट स्टैण्डर्ड लाइब्रेरीज़' को हाँ पर सेट करना मेरे लिए काम करता है।


1

मेरे पास समान मुद्दा था जिसे प्लिस्ट में गुम अनुमति विनिर्देश द्वारा हल किया गया था (जैसा कि यह अजीब है ..)

मैंने AVCaptureDevice का उपयोग करने की कोशिश की है और यह शुरू में ही दुर्घटनाग्रस्त हो गया (मेरा ऐप बहुत कम था)

जोड़ना - Privacy - Camera Usage Description करने के लिए info.plistमेरे लिए यह हल किया।


1

इस त्रुटि के साथ मुठभेड़ों की लंबी सूची में जोड़ने के लिए, यह तब होता है जब मैं XCode12.2 बीटा 2 पर होता हूं, अपने मैक पर मैकओएस 10.15.5 के साथ तैनाती करता हूं, जो कि मैकओएस 11.0 पर निर्धारित तैनाती लक्ष्य के साथ होता है। यह स्थिति इसलिए हुई क्योंकि मैं एक साइडबार को जोड़ने पर मैक कैटालिस्ट ट्यूटोरियल ऐप को आज़मा रहा था। लक्ष्य को मैकओएस 10.15.5 पर स्विच करने से त्रुटि समाप्त हो गई और ऐप को ठीक से लॉन्च किया।


0

मैंने अपनी परियोजना में अपनी त्रुटि तय की है।
1. त्रुटि होने पर अन्य थ्रेड्स की जाँच करें। मैंने पाया कि मेरी त्रुटि कैमरे के बारे में है।

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

  1. Info.plist फ़ाइल में कैमरा गोपनीयता जोड़ें।
    1) info.plist फ़ाइल खोलें।
    2) "गोपनीयता - कैमरा उपयोग विवरण" नामक एक नई कुंजी जोड़ें और एक स्ट्रिंग दर्ज करें जो बताती है कि ऐप को कैमरा की आवश्यकता क्यों है। वर्णन तब प्रदर्शित करेगा जब आपके ऐप को गोपनीयता का उपयोग करने की आवश्यकता होगी।

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


0

मेरे पास बस एक ही मुद्दा है और यही कारण है कि इस तथ्य के कारण कि मैंने अपने डेवलपर प्रमाणपत्रों को निरस्त कर दिया है और Xcode 10 के साथ नए बनाए हैं, एक ताजा macOS Mojave अपडेट के बाद (कुछ के लिए यह सभी लॉगिन क्रेडेंशियल को हटा दिया गया और कुछ को पुराना कर दिया गया चाबी का गुच्छा प्रमाण पत्र)।

इसलिए, मुझे केवल इतना करना था कि अपने डिवाइस से इंस्टॉल किए गए ऐप्स को हटा दें और उन्हें फिर से Xcode के माध्यम से चलाएं, ताकि मेरे डिवाइस में सही नए प्रोविजनिंग प्रोफाइल को स्थापित किया जा सके :)


0

कभी-कभी ऐसा होता है जब आप सिस्टम फ्रेमवर्क का उपयोग करते हैं जो केवल बाद के आईओएस संस्करण से सुलभ होते हैं जो आपका लक्ष्य संस्करण होता है। इस लिंक किए गए ढांचे को वैकल्पिक के रूप में चिह्नित करके इसे ठीक किया जा सकता है।

उदाहरण के लिए, iOS 11 पर लक्षित एक परियोजना और iOS 12 AutoFill सुविधा के लिए AuthenticationServices का उपयोग करते हुए, वर्णित 11 iOS पर दुर्घटनाग्रस्त हो जाएगा।


0

वास्तव में, मेरे पास 11.3.1 के साथ मुद्दा था और थ्रेड सैनिटाइज़र पहले से ही बंद था जैसा कि ऊपर बताया गया है। मेरे मामले में मैं इस तरह से अपने आवेदन फ़ोल्डर में अलग xCode संस्करणों के लिए इस्तेमाल किया गया था

/Applications/xcode11.3.1/Xcode.app
/Applications/xcode11.3/Xcode.app
/Applications/xcode10.1/Xcode.app

तथा

/Applications/Xcode.app - was 11.2

मुझे समझने में 2 दिन लगते हैं कि बिल्ड सिस्टम डिफ़ॉल्ट रूप से /Applications/Xcode.app पर दिखता है। इसलिए 11.3.1 को /Applications/Xcode.app पर लाकर समस्या को हल करें


0

इसके अलावा अगर आप कस्टम फ्रेमवर्क का उपयोग कर रहे हैं, तो सुनिश्चित करें कि आपने माच-ओ टाइप को स्थिर लाइब्रेरी में सेट किया है। मैंने कहीं पढ़ा है कि IOS dylib की अनुमति नहीं देता है। वैसे भी यह मेरे लिए काम किया।


0

मेरे साथ भी ऐसा ही हुआ। मेरे पास iOS 14 बीटा था और जब मैंने इसे आधिकारिक संस्करण में अपडेट किया तो समस्या ठीक हो गई थी।


-1

मैंने उस समस्या का केवल वास्तविक डिवाइस (iPhone SE) पर चलने पर अनुभव किया। सिम्युलेटर प्रोजेक्ट पर उम्मीद के मुताबिक काम किया।

मैंने बहुत सारे धागे और यहाँ से सभी सुधारों की कोशिश की: OS X फ्रेमवर्क लाइब्रेरी लोड नहीं हुई: 'इमेज नहीं मिली' उनमें से किसी ने भी मेरे लिए काम नहीं किया।

मेरे लिए iPhone (सिक!) को पुनरारंभ करने के बाद समस्या हल हो गई थी।

मैंने किया:

  • साफ बिल्ड फ़ोल्डर,
  • स्वच्छ व्युत्पन्न डेटा,
  • डिवाइस से ऐप हटाएं,
  • उपकरण फिर से शुरू करें

और यह अंत में काम करता है। :)

यदि हर दूसरे समाधान विफल रहता है तो इसे आज़माना न भूलें।


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