আমার অ্যাপ্লিকেশনটি চালানোর সময় আমি কখনও কখনও এক্সকোড 8 বি 3 এর লগগুলিতে এই বার্তাটি পাই, সমস্ত কিছু কাজ করে বলে মনে হচ্ছে তবে আমি কোথা থেকে এসেছি তা জানতে চাই। গুগল মোটেই সহায়তা করেনি।
willShowViewController
কখনও বলা হয় না, না ...
আমার অ্যাপ্লিকেশনটি চালানোর সময় আমি কখনও কখনও এক্সকোড 8 বি 3 এর লগগুলিতে এই বার্তাটি পাই, সমস্ত কিছু কাজ করে বলে মনে হচ্ছে তবে আমি কোথা থেকে এসেছি তা জানতে চাই। গুগল মোটেই সহায়তা করেনি।
willShowViewController
কখনও বলা হয় না, না ...
উত্তর:
আপনার এক্সকোডে:
এটি +[UIWindow _synchronizeDrawingAcrossProcessesOverPort:withPreCommitHandler:]
os_log API এর মাধ্যমে আসে । এটি আপনি যে অন্য উপাদানগুলি / ফ্রেমওয়ার্কগুলি ব্যবহার করছেন তা থেকে নির্ভর করে না (কেবলমাত্র ইউআইকিট থেকে) - এটি ইন্টারফেস ওরিয়েন্টেশন পরিবর্তনে পরিষ্কার একক দর্শন অ্যাপ্লিকেশন প্রকল্পে পুনরুত্পাদন করে।
এই পদ্ধতিটি 2 টি অংশ থেকে গঠিত:
যখন দ্বিতীয় অংশটি ব্যর্থ হয় (নিষিদ্ধ রূপান্তরের মতো দেখায়), এটি ত্রুটির লগের জন্য উপরে বার্তা প্রিন্ট করে। তবে, আমি মনে করি যে এই সমস্যাটি মারাত্মক নয়: এই পদ্ধতিতে আরও 2 টি অতিরিক্ত দাবী মামলা রয়েছে, যা ডিবাগে ক্র্যাশ ঘটায়।
দেখে মনে হচ্ছে যে রাডার আমরা করতে পারি সেরা।
environment variables
স্কিমের অধীনে নিম্নলিখিতগুলিতে রাখার চেষ্টা করুনrun(debug)
OS_ACTIVITY_MODE = disable
আমরা এটিকে এটিকে নিঃশব্দ করতে পারি (ডিভাইস এবং সিমুলেটরের বিভিন্ন মান প্রয়োজন):
নাম OS_ACTIVITY_MODE
এবং মান যুক্ত করুন ${DEBUG_ACTIVITY_MODE}
এবং এটি পরীক্ষা করুন (পণ্য -> প্রকল্প -> স্কিম সম্পাদনা করুন -> চালান -> যুক্তি -> পরিবেশ)।
ব্যবহারকারী-সংজ্ঞায়িত সেটিং যুক্ত করুন DEBUG_ACTIVITY_MODE
, তারপরে যুক্ত Any iOS Simulator SDK
করুন Debug
এবং এর মান সেট করুন disable
(প্রকল্পে -> বিল্ড সেটিংস -> + -> ব্যবহারকারী-সংজ্ঞায়িত সেটিং)
ঠিক করার জন্য, আমি সিমুলেটর থেকে অ্যাপটি মুছলাম।
আমি প্রথমে ক্লিন দৌড়েছি ।
আমি মনে করি না যে ওরিয়েন্টেশন সম্পর্কিত কোনও এটিই ট্রিগার করেছিল। এই লক্ষণটি শুরুর আগে সবচেয়ে বড় যে বিষয়টি পরিবর্তিত হয়েছিল তা হ'ল একটি সুইফ্ট কাঠামোটি NSLog
মূল থ্রেডের পরিবর্তে শ্রমিক থ্রেডগুলিতে কল করা শুরু করে।
OS_ACTIVITY_MODE = disable
এটি বাস্তব ডিভাইসগুলিতে ডিবাগ করার ক্ষমতাও অক্ষম করবে (এরপরে রিয়েল ডিভাইসগুলি থেকে কোনও কনসোল আউটপুট নেই)।