অনেক পরিস্থিতিতে আপনার সত্যিকার অর্থে শর্তসাপেক্ষ সংকলনের প্রয়োজন নেই ; আপনার কেবল শর্তযুক্ত আচরণ দরকার যা আপনি চালু এবং বন্ধ করতে পারেন। তার জন্য, আপনি একটি পরিবেশের পরিবর্তনশীল ব্যবহার করতে পারেন। এটির বিশাল সুবিধা যা আপনার আসলে পুনরায় সংকলন করতে হবে না।
আপনি পরিবেশ পরিবর্তনশীল সেট করতে পারেন এবং সহজেই স্কিম এডিটরটিতে এটি চালু বা বন্ধ করতে পারেন:
এনএসপি প্রসেসআইএনফো দিয়ে আপনি পরিবেশের পরিবর্তনশীলটি পুনরুদ্ধার করতে পারেন:
let dic = NSProcessInfo.processInfo().environment
if dic["TRIPLE"] != nil {
// ... do secret stuff here ...
}
এখানে একটি বাস্তব জীবনের উদাহরণ। আমার অ্যাপ্লিকেশনটি কেবলমাত্র ডিভাইসে চলে, কারণ এটি সঙ্গীত লাইব্রেরি ব্যবহার করে, যা সিমুলেটারে নেই। তাহলে, আমার নিজের মতো না থাকা ডিভাইসগুলির জন্য সিমুলেটারে স্ক্রিন শট নেওয়া কীভাবে? এই স্ক্রিন শট ছাড়া, আমি অ্যাপস্টোর জমা দিতে পারবেন না।
আমার জাল ডেটা এবং এটি প্রক্রিয়া করার একটি ভিন্ন উপায় দরকার । আমার দুটি পরিবেশের ভেরিয়েবল রয়েছে: একটি, যা যখন অন হয়, তখন অ্যাপটিকে আমার ডিভাইসে চলার সময় আসল ডেটা থেকে জাল তথ্য তৈরি করতে বলে; অন্যটি যখন স্যুইচ করা থাকে তখন সিমুলেটারে চলার সময় ভুয়া তথ্য (নিখোঁজ সংগীত লাইব্রেরি নয়) ব্যবহার করে। সেই বিশেষ মোডগুলির প্রত্যেকটি অন / অফ স্যুইচ করা সম্পাদকীয় পরিবেশগত পরিবর্তনশীল চেকবক্সগুলিকে ধন্যবাদ is এবং বোনাসটি হ'ল আমি দুর্ঘটনাক্রমে এগুলি আমার অ্যাপ স্টোর বিল্ডে ব্যবহার করতে পারি না, কারণ সংরক্ষণাগারটির কোনও পরিবেশের ভেরিয়েবল নেই।