স্থিতিশীল কোড শাখা নিশ্চিত করার জন্য Google দ্বারা বৈশিষ্ট্য লঞ্চ পতাকা ব্যবহার করা হয়। AOSP-তে কিছু নির্দিষ্ট ধরনের অবদানের জন্যও এই পতাকাগুলির প্রয়োজন। বৈশিষ্ট্য লঞ্চ ফ্ল্যাগিং বাস্তবায়ন করার আগে, আপনার পরিবর্তনের জন্য একটি পতাকা প্রয়োজনীয় কিনা তা নির্ধারণ করুন। এবং, যদি একটি পতাকা প্রয়োজন হয়, তাহলে আপনার ব্যবহার করা পতাকার ধরন নির্ধারণ করা উচিত।
পতাকার ব্যবহার নির্ধারণ করুন
ফিচার লঞ্চ পতাকা কখন ব্যবহার করবেন তা নির্ধারণ করতে, এই নির্দেশিকাগুলি অনুসরণ করুন:
আপনি যদি এমন একটি পরিবর্তন করেন যা AOSP কোডবেসকে অস্থির হতে পারে, যেমন একটি নতুন বৈশিষ্ট্য যোগ করা বা একটি বিশেষ জটিল বাগ সংশোধন করা, একটি বৈশিষ্ট্য লঞ্চ পতাকা ব্যবহার করুন।
বিপরীতভাবে, আপনি যদি এমন একটি কোড পরিবর্তন করেন যা কোডবেসকে অস্থির করার জন্য উপযুক্ত নয়, যেমন মন্তব্য পরিবর্তন করা, তাহলে আপনাকে একটি বৈশিষ্ট্য লঞ্চ পতাকা ব্যবহার করতে হবে না।
পতাকার ধরন নির্ধারণ করুন
পতাকা দুই ধরনের আছে: aconfig পতাকা এবং বিল্ড পতাকা ।
Aconfig পতাকা
Aconfig পতাকাগুলি পরীক্ষা এবং প্রকাশের প্রক্রিয়া চলাকালীন মুক্তিপ্রাপ্ত কোড থেকে অপ্রকাশিত কোডের সম্পাদনকে আলাদা করতে ব্যবহৃত হয়। Aconfig পতাকাগুলি পড়তে-লিখতে বা শুধুমাত্র-পঠন হতে পারে:
রিড-রাইট aconfig পতাকাগুলি হল বুলিয়ান ভেরিয়েবল যা আপনি রানটাইমে সক্ষম (
true
সেট) বা নিষ্ক্রিয় (false
সেট) করতে পারেন। একটি প্রধান শাখার স্থায়িত্বকে প্রভাবিত না করে পরিবর্তনগুলি পরীক্ষা এবং প্রকাশ করতে একটি পঠন-লেখা পতাকা ব্যবহার করুন।শুধুমাত্র পঠনযোগ্য aconfig পতাকাগুলি হল বুলিয়ান ধ্রুবক যা আপনি রানটাইমে পরিবর্তন করতে পারবেন না। আপনি স্থিতিশীল এবং প্রকাশের জন্য প্রস্তুত কোডের জন্য রিড-রাইট aconfig পতাকাগুলিকে শুধুমাত্র-পঠনযোগ্য একটি কনফিগ পতাকায় রূপান্তর করতে পারেন।
অতিরিক্তভাবে, আপনি যে কম্পাইলারটি ব্যবহার করছেন তার উপর নির্ভর করে, যখন একটি পঠন-পাঠন পতাকা ব্যবহার করা হয়, তখন যে কোডটি কার্যকর করা হয় না তা বিল্ড থেকে বাদ দেওয়া হতে পারে। অতএব, আপনি যেকোন কোড লুকানোর জন্য শুধুমাত্র-পঠন পতাকা ব্যবহার করতে পারেন যা রিলিজের অংশ হতে প্রস্তুত নয়।
পতাকা তৈরি করুন
বিল্ড পতাকাগুলি হল বিল্ড-টাইম কনস্ট্যান্টস (স্ট্রিং) এবং আপনি রানটাইমের সময় সেগুলি পরিবর্তন করতে পারবেন না। এই পতাকাগুলি এমন পরিস্থিতিতে ব্যবহার করুন যেখানে আপনি কনফিগার পতাকা ব্যবহার করতে পারবেন না, যেমন:
- আপনার কাছে একটি প্রি-কম্পাইল করা বা প্রি-বিল্ট কোড রয়েছে যা আপনি বিল্ডে অন্তর্ভুক্ত করতে চান।
- আপনি সিস্টেম নিজেই তৈরি করতে পরিবর্তন করতে চান।
- আপনি কোড আকার পরিচালনা করতে নির্ভরতার চারপাশে পতাকা রাখতে চান।