আমি যখন আমার অ্যাপ্লিকেশনটি XCode দিয়ে শুরু করি তখন আমার ক্র্যাশ হয় তবে ত্রুটি হয় না
অ্যাপটি কেবল এই থ্রেডটিতে থামছে
সমস্যাটি সম্পর্কে আরও তথ্য পেতে আমি কী করতে পারি?
উত্তর:
আপনি যদি কাস্টম ফ্রেমওয়ার্কগুলি ব্যবহার করে থাকেন তবে আপনার এটিকে টার্গেট / জেনারেল ট্যাবের অধীন এক্সকোড প্রকল্পে অবস্থিত "এমবেডেড বাইনারিস" বিভাগের মধ্যে রাখতে হবে।
আমার জন্য একটি সহজ Clean
এবং Rebuild
এটি বাছাই। আশা করি এটা সাহায্য করবে.
এম্বেড থাকা বাইনারি সম্পদ তালিকায় ফ্রেমওয়ার্ক যুক্ত করা এটি স্থির করে। এম্বেড ফ্রেমওয়ার্ক হিসাবে এক্সকোড জিইউআইতে বিদেশী কাঠামোর সেটআপটি চূড়ান্ত রূপের মতো দেখতে এখানে রয়েছে (এক্সকোড 9.2, ব্যক্তিগতভাবে আমি ভিজ্যুয়াল রুটির ক্র্যাম্ব ট্রেইলটি আরও ভাল পছন্দ করি;)
অ্যাপল কি ইচ্ছাকৃতভাবে রানটাইমটি ক্র্যাশ করে কোনওভাবে বিকাশকারীকে এই সমস্যাটি সম্পর্কে বলেছিল যে আপনি আইওএস বিকাশে কেবল নন-অ্যাপল ফ্রেমওয়ার্ক ব্যবহার করতে পারবেন না? আমি মনে করি একটি বিল্ড ত্রুটি হিসাবে এটি উপস্থিত হওয়া ভাল হবে ... একটি বোতাম যা "এটিকে সরান!"
এম্বেডেড বাইনারিগুলির ব্যবহার শেষ ব্যবহারকারীকে আপনার অ্যাপ্লিকেশনটির স্বাধীনভাবে ফ্রেমওয়ার্ক যুক্ত করা থেকে বিরত রাখে (বা কোনও ইনস্টলার দিয়ে আপনি করেছেন)। আইফোন (আইওএস) এর ক্ষেত্রে এটি অসম্ভব, তবে ম্যাকোএসের ক্ষেত্রে এটি সম্ভব তবে দ্রুত অগোছালো হয়ে উঠতে পারে।
শেষ ব্যবহারকারীর জন্য, কোনও অ্যাপ্লিকেশনটিকে ম্যাকোজে ইনস্টল করার জন্য কেবল এটিকে টেনে আনতে এবং ছেড়ে দেওয়া অনেক ভাল, এটি এম্বেড থাকা উপকারে পরিণত হয়। এম্বেডিং আপনার কাঠামোর বাহ্যিক সংস্করণ পরিচালনা করার জন্য ক্লাসিক "ডিএলএল বিবাদগুলি" এড়িয়ে যায়। (ডিস্কের জায়গা সস্তা, আমার গ্রাহকের সময় মূল্যবান)।
অবশেষে সমাধান!
আমার জন্য যা কাজ করেছিল তা হ'ল ফ্রেমওয়ার্কটি "প্রয়োজনীয়" পরিবর্তে "alচ্ছিক" করা।
আশা করি এইটি কাজ করবে!
1) "মাইফ্রেমওয়ার্ক.ফ্রেমওয়ার্ক" এর মতো কোনও ডিবাগারে কোনও বার্তা প্রদর্শিত না হয় তা দেখার জন্য কার্যকর করা চালিয়ে যান। যদি এটি হয় তবে এই আলোচনাটি অনুসরণ করুন: ওএস এক্স ফ্রেমওয়ার্ক লাইব্রেরি লোড হয়নি: 'চিত্র পাওয়া যায় নি' আমার জন্য এই উত্তরটি কাজ করেছে: https://stackoverflow.com/a/44796734/4060763
২) নিশ্চিত করুন যে আপনি "এম্বেড বাইনারি" বিভাগের মাধ্যমে বাইনারি যুক্ত করেছেন।
3) নিশ্চিত করুন যে আপনি বিল্ড ফেজ বিভাগে ফ্রেমওয়ার্কগুলিতে স্বাক্ষর করতে সক্ষম করেছেন।
4) নিশ্চিত করুন যে এমবেড করা ফ্রেমওয়ার্কগুলি সিমলিঙ্কগুলি নয়।
5) আপনি "লাইব্রেরিগুলির সাথে লিঙ্ক বাইনারি" পর্যায়ে পরিবর্তিত লিঙ্কযুক্ত ফ্রেমওয়ার্কগুলি alচ্ছিক করতে পারেন। এটি আইওএসকে বলবে যে প্রবর্তনের সময় এই ফ্রেমওয়ার্কগুলি সন্ধান করবেন না। তবে যাইহোক আপনাকে সেই ফ্রেমওয়ার্কগুলি ব্যবহার করতে ত্রুটিগুলি ঠিক করতে হবে!
6) সমস্ত তথ্য.পলিট এন্ট্রি ভাল কিনা তা পরীক্ষা করে দেখুন। আমার ক্ষেত্রে, আমি আইওএসের জন্য একটি ম্যাক তথ্য.পলিট ফাইলটি ব্যবহার করছিলাম। এটি এমন কোনও xib ফাইল সন্ধান করছে যা আইওএস প্রকল্পে উপস্থিত ছিল না।
)) এমন কোনও পরিবর্তনের পরে একটি পরিষ্কার এবং বিল্ড করুন। এটি প্রয়োজনীয় কারণ xcode এই ফাইলগুলি ইতিমধ্যে বিদ্যমান থাকলে অনুলিপি / পরিবর্তন করে না।
৮) আইপ্যাড থেকে অ্যাপটি সরান এবং তারপরে ইনস্টল করুন। 7 হিসাবে একই কারণ।
Guard Malloc
, সঠিক হতে. কেউ কেন জানেন কেন এটি ক্র্যাশ স্থির করে?
"ইস্যু সম্পর্কে আরও তথ্য পেতে আমি কী করতে পারি?" এই মূল প্রশ্নের উত্তর দেওয়ার জন্য, এই অ্যাপল ফোরামের থ্রেডটি একটি খুব সহজ টিপ দেয়: কেবল আপনার ক্র্যাশিং অ্যাপটি এক্সকোডের বাইরে চালিত করুন (যেমন এটি এক্সকোড থেকে থামান, তারপরে নিজেই এটি চালান আপনার যন্ত্র). এটি একটি ক্র্যাশ লগ তৈরি করবে যা ঘটেছে সে সম্পর্কে আরও বিশদ যুক্ত করে। তারপরে আপনি এই লগটি এক্সকোড উইন্ডো মেনু / ডিভাইস এবং সিমুলেটরগুলি থেকে পর্যালোচনা করতে পারেন -> ডিভাইস লগগুলি দেখুন।
আমি এক্সকোড 11.3 এবং ম্যাকোস ক্যাটালিনা 10.15.2 এর সাথে একই সমস্যার মুখোমুখি হয়েছি। অ্যাপটি ডিভাইসটির ভাল চলছে তবে সিমুলেটারে নয়। মনে হচ্ছে সিমুলেটারের সাথে কোনও সমস্যা আছে এবং থ্রেড স্যানিটাইজারটি নিষ্ক্রিয় করার জন্য কাজটি করা হচ্ছে।
দেখুন: https://forums.developer.apple.com/message/397978#397978
আশাকরি এটা সাহায্য করবে.
আমি একই স্বাক্ষরের সাথে একটি ত্রুটির মুখোমুখি হয়েছি (আমার প্রকল্পটি ওজজে-সি-তে ছিল) এবং আবিষ্কার করেছি যে আমি উপযুক্ত কাঠামোর সাথে লিঙ্ক করতে ভুলে গিয়েছি। ডিবাগ লগে ত্রুটি বার্তা যা ত্রুটিটি সন্ধান করতে পরিচালিত করেছিল তা হ'ল:
ডিল্ড: প্রতীকটি পাওয়া যায় নি: _OBJC_CLASS _ $ _ এসএফএসফারিভিউ কনট্রোলার
আমার নির্দিষ্ট ত্রুটির জন্য, লক্ষ্যগুলিতে সাফারি সার্ভিস.ফ্রেমওয়ার্ক যুক্ত করে - পর্যায়গুলি তৈরি করুন -> "লাইব্রেরিগুলির সাথে বাইনারি লিঙ্ক করুন" সমস্যাটি সমাধান করেছে। আপনার সম্ভবত একই নির্দিষ্ট ত্রুটি এবং রেজোলিউশন না থাকলেও ক্লুগুলির জন্য ডিবাগ লগটি পরীক্ষা করা কার্যকর।
এক্সকোডকে v10.2.1 এ আপডেট করার পরে এবং v5.0 এ স্যুইফ্ট করার পরেও আমার এই অবস্থাটি হয়েছে যদি আপনি কার্থেজ + আরএক্সসউফটটি নতুন আরএক্সসুইফ্ট ব্যবহার করেন তবে RxRelay.framework
। আপনার নিজের / কার্থেজ / বিল্ড ডিরেক্টরিতে গিয়ে সেই কাঠামোটি খুঁজে পেতে এবং এটি আপনার প্রকল্পে নকশা করা উচিত। আপনার carthage copy-frameworks
স্ক্রিপ্ট এ এটি যুক্ত ভুলবেন না :
$(SRCROOT)/Carthage/Build/iOS/RxRelay.framework
এর জন্য ধন্যবাদ সমাধান হয়েছে: https://stackoverflow.com/a/52550148/2493555
আপনি যদি একটি উদ্দেশ্য-সি অ্যাপ্লিকেশনটিতে সুইফটে লিখিত একটি কাঠামো ব্যবহার করছেন, আপনাকে ফ্রেমবুকটি গ্রাসকারী অ্যাপটিতে সুইফট সরঞ্জামচেন অন্তর্ভুক্ত করতে হবে।
আমি এটি করতে যেভাবে খুঁজে পেয়েছি তা হ'ল অ্যাপটিতে একটি ডামি সুইফ্ট ফাইল তৈরি করা যাতে এক্সকোড দ্রুতগতিতে স্বীকৃতি দেয় এবং প্রজেক্টে যথাযথভাবে এটি যুক্ত করে। তারপরে আপনি ডামি ফাইলটি মুছতে পারেন।
আমি যদি কেউ সুইফট ফাইল না যোগ করে সুস্পষ্টভাবে একটি উদ্দেশ্য-সি প্রকল্পে সুইফ্ট যুক্ত করার আরও ভাল উপায় সম্পর্কে জানতাম তবে আমি পছন্দ করব।
যদি আপনি কার্থেজ বিল্ড ফ্রেমওয়ার্ক ব্যবহার করেন, আপনার প্রজেক্টে ফ্রেমওয়ার্কটি টেনে আনার পরে, আপনি এটি জেনারেল / এম্বেড বাইনারিগুলিতে যুক্ত করা উচিত।
আমি এটি সমাধান করার সঠিক উপায় খুঁজে পাই।
AppleWWDRCA.cer
সেটটি সিস্টেম ডিফল্ট মোডে সেট করুন তা নিশ্চিত হয়ে নিন :
আমি একই সমস্যা ছিল। আমার টার্গেটের বিল্ড সেটিংসে 'সর্বদা এম্বেড সুইফট স্ট্যান্ডার্ড লাইব্রেরিগুলি' হ্যাঁ সেট করা আমার পক্ষে কাজ করেছিল।
আমার অনুরূপ সমস্যা ছিল যা প্লাস্টে অনুমতি স্পেসিফিকেশন অনুপস্থিত দ্বারা সমাধান করা হয়েছিল (এটি যতটা অদ্ভুত ..)
আমি AVCaptureDevice ব্যবহার করার চেষ্টা করেছি এবং এটি শুরু করার সময় ক্র্যাশ হয়েছিল (আমার অ্যাপটি খুব ন্যূনতম ছিল)
যোগ করার হচ্ছে -
Privacy - Camera Usage Description
থেকে info.plist
আমার জন্য এটি সমাধান।
এছাড়াও আপনি যদি কাস্টম ফ্রেমওয়ার্ক ব্যবহার করছেন তবে নিশ্চিত হয়ে নিন যে আপনি ম্যাচ-ও টাইপটি স্ট্যাটিক লাইব্রেরিতে সেট করেছেন। আমি কোথাও পড়েছি যে আইওএস dylib অনুমতি দেয় না। যাইহোক এটি আমার পক্ষে কাজ করেছিল।
এই ত্রুটির সাথে লড়াইয়ের দীর্ঘ তালিকায় যোগ করার জন্য, এটি তখন ঘটে যখন আমি XCode12.2 বিটা 2-এ থাকি যখন ম্যাকোস 11.0 তে স্থাপনের লক্ষ্য নির্ধারণের সাথে আমার ম্যাকস 10.15.5 চালাচ্ছি Mac এই পরিস্থিতিটি ঘটেছে কারণ আমি সাইডবার যুক্ত করার জন্য ম্যাক ক্যাটালিস্ট টিউটোরিয়াল অ্যাপটি চেষ্টা করেছিলাম । লক্ষ্যটিকে MacOS 10.15.5 এ স্যুইচ করা ত্রুটিটি দূর করে এবং অ্যাপটিকে সঠিকভাবে চালু করে।
আমি আমার প্রকল্পে আমার ত্রুটি স্থির করেছি।
1. ত্রুটি ঘটলে অন্যান্য থ্রেড পরীক্ষা করুন I আমি খুঁজে পেয়েছি যে আমার ত্রুটি ক্যামেরা সম্পর্কে।
আমি ঠিক একই সমস্যাটি পেয়েছি এবং এর কারণ হ'ল কারণ আমি আমার বিকাশকারী শংসাপত্রগুলি বাতিল করে দিয়েছি এবং এক্সকোড 10 দিয়ে নতুন তৈরি করেছি, একটি নতুন ম্যাকোস মোজাভে আপডেটের পরে (কারওর জন্য এটি সমস্ত লগইন শংসাপত্রগুলি মুছে ফেলে এবং কিছুটা পুরানো হয়ে গেছে) কীচেইন শংসাপত্র)।
সুতরাং, আমার যা করতে হবে তা হ'ল আমার ডিভাইস থেকে ইনস্টল করা অ্যাপ্লিকেশনগুলি সরিয়ে আবার এক্সকোডের মাধ্যমে এগুলি চালানো, যাতে এটি আমার ডিভাইসে সঠিক নতুন প্রভিশনিং প্রোফাইলটি ইনস্টল করতে পারে :)
কখনও কখনও এটি ঘটে যখন আপনি সিস্টেমের ফ্রেমওয়ার্কগুলি ব্যবহার করেন যা কেবলমাত্র আপনার পরবর্তী সংস্করণটির iOS সংস্করণ থেকে অ্যাক্সেসযোগ্য your Linkedচ্ছিক হিসাবে এই লিঙ্কযুক্ত কাঠামোটি চিহ্নিত করে এটি সংশোধন করা হতে পারে।
উদাহরণস্বরূপ, আইওএস 11 এ লক্ষ্যযুক্ত একটি প্রকল্প এবং আইওএস 12 অটোফিল বৈশিষ্ট্যের জন্য অথেনটিকেশন সার্ভিসগুলি ব্যবহার করা আইওএস 11 বর্ণিত উপায়ে ক্রাশ হবে।
প্রকৃতপক্ষে, আমি 11.3.1 দিয়ে সমস্যাটি পেয়েছি এবং থ্রেড স্যানিটাইজার ইতিমধ্যে উপরে উল্লিখিত হিসাবে বন্ধ করে দেওয়া হয়েছিল। আমার কেস ইস্যুতে আমার অ্যাপ্লিকেশন ফোল্ডারে আমার মতো আলাদা এক্সকোড সংস্করণ ব্যবহার করা হয়েছিল
/Applications/xcode11.3.1/Xcode.app
/Applications/xcode11.3/Xcode.app
/Applications/xcode10.1/Xcode.app
এবং
/Applications/Xcode.app - was 11.2
আমাকে বিল্ড সিস্টেমটি ডিফল্টরূপে / অ্যাপ্লিকেশনগুলি / এক্সকোড.এপটিতে দেখায় তা বুঝতে 2 দিন সময় লাগে। সুতরাং / অ্যাপ্লিকেশনগুলি / এক্সকোড.এপ এ 11.3.1 এনে অবশেষে সমস্যার সমাধান করুন
আমি রিয়েল ডিভাইসে (আইফোন এসই) চালানোর সময়ই এই সমস্যাটি অনুভব করেছি। সিমুলেটর প্রকল্পটি প্রত্যাশার মতো কাজ করেছিল।
আমি খুব থ্রেড এবং এখান থেকে সমস্ত স্থির চেষ্টা করেছি: ওএস এক্স ফ্রেমওয়ার্ক লাইব্রেরি লোড হয়নি: 'চিত্র পাওয়া যায় নি' তাদের কেউই আমার পক্ষে কাজ করেনি।
আমার জন্য আইফোন পুনরায় চালু করার পরে সমস্যার সমাধান হয়েছে (sic!)।
আমি করেছিলাম:
এবং এটি অবশেষে কাজ করে। :)
যদি অন্য প্রতিটি সমাধান ব্যর্থ হয় তবে এটি চেষ্টা করে দেখুন।
আমি এটি "পড ইনস্টল" কমান্ড দ্বারা বাছাই করেছি।