কম্প্যাটিবিলিটি ফ্রেমওয়ার্ক সংক্রান্ত পরিবর্তন (Android ১৬)

ছবি ১. ডেভেলপার বিকল্পে অ্যাপ কম্প্যাটিবিলিটি পরিবর্তন স্ক্রিনে আপনি যেসব পরিবর্তন টগল করতে পারবেন তার তালিকা দেওয়া থাকে।

এই পৃষ্ঠায় Android 16 (API লেভেল ৩৬)-এর কম্প্যাটিবিলিটি ফ্রেমওয়ার্কের অংশ হিসেবে টগল করা যায় এমন পরিবর্তনের বিবরণ দেওয়া হয়েছে। Android ১৬-এর জন্য আপনার অ্যাপকে প্রস্তুত ও টার্গেট করার সময়, সেটি পরীক্ষা ও ডিবাগ করতে, ডেভেলপার বিকল্প ও ADB কমান্ড-এর সাথে এই তালিকা ব্যবহার করুন।

কম্প্যাটিবিলিটি ফ্রেমওয়ার্ক টুল ব্যবহার করে আপনি যেসব কাজ করতে পারবেন তার মধ্যে কয়েকটি এখানে উল্লেখ করা হল:

  • অ্যাপের targetSdkVersion আসলে পরিবর্তন না করেই টার্গেট করা পরিবর্তন পরীক্ষা করুন। আপনার বর্তমান অ্যাপের উপর প্রভাব মূল্যায়ন করতে, আপনি টগল ব্যবহার করে নির্দিষ্ট টার্গেট করা আচরণ পরিবর্তন জোর করে চালু করতে পারেন।
  • শুধুমাত্র নির্দিষ্ট পরিবর্তনের উপর আপনার টেস্টিং ফোকাস করুন। একবারে সব টার্গেট করা পরিবর্তন অ্যাড্রেস করার পরিবর্তে, টগল আপনাকে সেইসব টার্গেট করা পরিবর্তন ছাড়া বাকি সব টার্গেট করা পরিবর্তন বন্ধ করতে দেয় যেগুলির বিরুদ্ধে আপনি পরীক্ষা করতে চান।
  • adb-এর মাধ্যমে টগল ম্যানেজ করুন। আপনার অটোমেটেড টেস্ট এনভায়রনমেন্টে টগল করা যায় এমন পরিবর্তন চালু ও বন্ধ করতে আপনি adb কমান্ড ব্যবহার করতে পারেন।
  • স্ট্যান্ডার্ড পরিবর্তন আইডি ব্যবহার করে আরও দ্রুত ডিবাগ করুন। টগল করা যায় এমন প্রতিটি পরিবর্তনের একটি অনন্য আইডি এবং নাম থাকে যা আপনি লগ আউটপুটে মূল কারণ দ্রুত ডিবাগ করতে ব্যবহার করতে পারেন।

এইসব ব্যবহারের ক্ষেত্রে টুল ব্যবহার করার ব্যাপারে সম্পূর্ণ বিবরণ জানতে, কম্প্যাটিবিলিটি ফ্রেমওয়ার্ক টুল দেখুন।

কম্প্যাটিবিলিটি ফ্রেমওয়ার্কে অন্তর্ভুক্ত আচরণগত পরিবর্তন

এই বিভাগে দেওয়া তালিকায় টগল করা যায় এমন পরিবর্তন সম্পর্কে বর্ণনা করা হয়েছে যা Android 16-সম্পর্কিত পরিবর্তন এবং টগল করা যায় এমন পরিবর্তনের জন্য কম্প্যাটিবিলিটি ফ্রেমওয়ার্কে অন্তর্ভুক্ত করা হয়েছে। এটি সাধারণ অ্যাপ টেস্টিংয়ের ক্ষেত্রে সাহায্য করতে পারে।

আপনি ডিফল্ট অবস্থা অনুযায়ী পরিবর্তনের তালিকা ফিল্টার করতে পারবেন।

Android ১৬-এ কম্প্যাটিবিলিটি ফ্রেমওয়ার্কে টগল করা যায় এমন পরিবর্তন

CAMERA_MIC_INDICATORS_NOT_PRESENT

পরিবর্তন আইডি: ১৬২৫৪৭৯৯৯
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

এই ডিভাইস ক্যামেরা ও মাইক্রোফোন ইন্ডিকেটর সাপোর্ট করে কিনা তা দেখায়। উপস্থিত থাকলে ভ্যালু হল false, কারণ CompatChanges#isChangeEnabled মেথড true রিটার্ন করে যদি পরিবর্তন আইডি উপস্থিত না থাকে।

DOWNSCALED

পরিবর্তন আইডি: ১৬৮৪১৯৭৯৯
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

এই পরিবর্তনটি প্রতিটি অ্যাপের বাফার ডাউনস্কেলিং সংক্রান্ত সব পরিবর্তনের গেটকিপার। এই পরিবর্তন চালু করলে নিম্নলিখিত স্কেলিং ফ্যাক্টর প্রয়োগ করা যাবে:

কোনও অ্যাপ প্যাকেজের জন্য এই পরিবর্তন চালু করা হলে, অ্যাপটি জোরপূর্বক সর্বোচ্চ, চালু করা স্কেলিং ফ্যাক্টরে ছোট বড় করা হয়। যেমন, ৮০% ও ৭০% (DOWNSCALE_80 এবং DOWNSCALE_70) দুটিই চালু থাকলে ৮০% ব্যবহার করা হয়। এই পরিবর্তন এবং DOWNSCALED_INVERSE দুটিই চালু করা থাকলে, DOWNSCALED_INVERSE অগ্রাধিকার পায় এবং স্কেলিং ফ্যাক্টর বিপরীতভাবে প্রয়োগ করা হয়।

DOWNSCALED_INVERSE

পরিবর্তন আইডি: ২৭৩৫৬৪৬৭৮
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

এই পরিবর্তনটি প্রতিটি অ্যাপের বাফার ইনভার্স ডাউনস্কেলিং সংক্রান্ত সব পরিবর্তনকে নিয়ন্ত্রণ করে। এই পরিবর্তন চালু করলে নিম্নলিখিত স্কেলিং ফ্যাক্টর বিপরীতভাবে প্রয়োগ করা যাবে (অর্থাৎ, রেজোলিউশন আপস্কেল করা হবে):

কোনও অ্যাপ প্যাকেজের জন্য এই পরিবর্তন চালু করা হলে, অ্যাপটি জোরপূর্বক সবচেয়ে কম, চালু করা স্কেলিং ফ্যাক্টরে ছোট বড় করা হয়। যেমন, ৮০% এবং ৭০% (DOWNSCALE_80 এবং DOWNSCALE_70) দুটিই চালু থাকলে ৮০% ব্যবহার করা হয় কারণ বিপরীতভাবে প্রয়োগ করা হলে, ৮০% স্কেলিং ফ্যাক্টর ১২৫%-এর সমান হয়, যা ৭০% স্কেলিং ফ্যাক্টর বিপরীতভাবে প্রয়োগ করা হলে যে ১৪২.৮৬% স্কেলিং প্রয়োগ করা হয় তার থেকে কম। এই পরিবর্তন এবং DOWNSCALED দুটিই চালু করা থাকলে, DOWNSCALED_INVERSE অগ্রাধিকার পায় এবং স্কেলিং ফ্যাক্টর বিপরীতভাবে প্রয়োগ করা হয়।

DOWNSCALE_30

পরিবর্তন আইডি: ১৮৯৯৭০০৪০
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

DOWNSCALED-ও চালু থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৩০%। যদি DOWNSCALED_INVERSE-ও চালু করা থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের রেজোলিউশনের ৩৩৩.৩৩%।

DOWNSCALE_35

পরিবর্তন আইডি: ১৮৯৯৬৯৭৪৯
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

DOWNSCALED-ও চালু করা থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নিতে বাধ্য হয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৩৫%। যদি DOWNSCALED_INVERSE-ও চালু করা থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ২৮৫.৭১%।

DOWNSCALE_40

পরিবর্তন আইডি: ১৮৯৯৭০০৩৮
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

DOWNSCALED-ও চালু করা থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নেয় যে এটি এমন ডিসপ্লেতে চলছে যার উল্লম্ব ও অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৪০%। যদি DOWNSCALED_INVERSE-ও চালু করা থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ২৫০%।

DOWNSCALE_45

পরিবর্তন আইডি: ১৮৯৯৬৯৭৮২
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

DOWNSCALED-ও চালু থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নেয় যে এটি এমন ডিসপ্লেতে চলছে যার উল্লম্ব ও অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৪৫%। যদি DOWNSCALED_INVERSE-ও চালু করা থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ২২২.২২%।

DOWNSCALE_50

পরিবর্তন আইডি: ১৭৬৯২৬৭৪১
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

DOWNSCALED-ও চালু থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৫০%। যদি DOWNSCALED_INVERSE-ও চালু থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ২০০%।

DOWNSCALE_55

পরিবর্তন আইডি: ১৮৯৯৭০০৩৬
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

DOWNSCALED-ও চালু করা থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৫৫%। যদি DOWNSCALED_INVERSE-ও চালু করা থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ১৮১.৮২%।

DOWNSCALE_60

পরিবর্তন আইডি: ১৭৬৯২৬৭৭১
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

DOWNSCALED-ও চালু থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৬০%। যদি DOWNSCALED_INVERSE-ও চালু থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ১৬৬.৬৭%।

DOWNSCALE_65

পরিবর্তন আইডি: ১৮৯৯৬৯৭৪৪
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

যদি DOWNSCALED-ও চালু থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নিতে বাধ্য হয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৬৫%। যদি DOWNSCALED_INVERSE-ও চালু করা থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ১৫৩.৮৫%।

DOWNSCALE_70

পরিবর্তন আইডি: ১৭৬৯২৬৮২৯
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

এছাড়াও DOWNSCALED চালু করা থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নেয় যে এটি এমন ডিসপ্লেতে চলছে যার উল্লম্ব ও অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৭০%। যদি DOWNSCALED_INVERSE-ও চালু করা থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ১৪২.৮৬%।

DOWNSCALE_75

পরিবর্তন আইডি: ১৮৯৯৬৯৭৭৯
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

DOWNSCALED-ও চালু থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৭৫%। যদি DOWNSCALED_INVERSE-ও চালু থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ১৩৩.৩৩%।

DOWNSCALE_80

পরিবর্তন আইডি: ১৭৬৯২৬৭৫৩
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

DOWNSCALED-ও চালু করা থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নেয় যে এটি এমন ডিসপ্লেতে চলছে যার উল্লম্ব ও অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৮০%। যদি DOWNSCALED_INVERSE-ও চালু থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ১২৫%।

DOWNSCALE_85

পরিবর্তন আইডি: ১৮৯৯৬৯৭৩৪
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

DOWNSCALED-ও চালু করা থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নিতে বাধ্য হয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৮৫%। যদি DOWNSCALED_INVERSE-ও চালু করা থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব ও অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ১১৭.৬৫%।

DOWNSCALE_90

পরিবর্তন আইডি: ১৮২৮১১২৪৩
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

DOWNSCALED-ও চালু থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ৯০%। যদি DOWNSCALED_INVERSE-ও চালু করা থাকে, তাহলে কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাপটি বাধ্য হয়ে ধরে নেয় যে এটি এমন একটি ডিসপ্লেতে চলছে যার উল্লম্ব এবং অনুভূমিক রেজোলিউশন আসল ডিসপ্লের ১১১.১১%।

ENFORCE_STRICT_QUERY_BUILDER

পরিবর্তন আইডি: 143231523
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

চালু করা থাকলে, SQLiteQueryBuilder ক্ষতিকর আর্গুমেন্টের বিরুদ্ধে সব CalendarProvider2 কোয়েরি বাছাইকরণ যাচাই করে।

FORCE_DISABLE_HEVC_SUPPORT

পরিবর্তন আইডি: ১৭৪২২৭৮২০
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

HEVC মিডিয়া ক্ষমতা সাপোর্ট করা থেকে কোনও অ্যাপকে জোর করে বন্ধ করুন। অ্যাপের ম্যানিফেস্টে সেটির মিডিয়া সংক্রান্ত ক্ষমতা উল্লেখ করা উচিত, তবে এই ফ্ল্যাগ ব্যবহার করে কোনও অ্যাপকে HEVC-তে এনকোড করা মিডিয়া অ্যাক্সেস করার সময় ট্রান্সকোড করতে বাধ্য করা যেতে পারে। এই ফ্ল্যাগ সেট করলে, অ্যাপের জন্য OS লেভেলের যেকোনও ডিফল্ট ওভাররাইড হয়ে যায়। এটি ডিফল্ট হিসেবে বন্ধ করা থাকে, যার অর্থ হল OS ডিফল্ট অগ্রাধিকার পায়। এই ফ্ল্যাগ এবং FORCE_ENABLE_HEVC_SUPPORT দুটিই চালু থাকলে, OS দুটি ফ্ল্যাগই উপেক্ষা করে।

FORCE_ENABLE_HEVC_SUPPORT

পরিবর্তন আইডি: ১৭৪২২৮১২৭
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

HEVC মিডিয়া ক্যাপাবিলিটি অ্যাপকে কাজ করতে দেওয়ার জন্য কোনও অ্যাপকে জোর করে চালু করা অ্যাপের ম্যানিফেস্টে তার কাজ করা মিডিয়া ক্যাপাবিলিটি ঘোষণা করা উচিত কিন্তু এই ফ্ল্যাগটি কোনও অ্যাপকে HEVC-তে কাজ করার জন্য জোর করতে ব্যবহার করা যেতে পারে, তাই HEVC-তে এনকোড করা মিডিয়া অ্যাক্সেস করার সময় ট্রান্সকোডিং এড়ানো যায়। এই ফ্ল্যাগ সেট করলে অ্যাপের জন্য যেকোনও OS লেভেল ডিফল্ট ওভাররাইড করে। এটি ডিফল্ট হিসেবে বন্ধ করা থাকে, যার অর্থ হল OS ডিফল্টকে অগ্রাধিকার দেওয়া হবে। এই ফ্ল্যাগ এবং FORCE_DISABLE_HEVC_SUPPORT দুটিই চালু থাকলে, OS দুটি ফ্ল্যাগই উপেক্ষা করে।

FORCE_NON_RESIZE_APP

পরিবর্তন আইডি: ১৮১১৪৬৩৯৫
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

যেসব প্যাকেজে এটি প্রয়োগ করা হয় সেগুলিকে ছোট বড় করা যায় না।

FORCE_RESIZE_APP

পরিবর্তন আইডি: ১৭৪০৪২৯৩৬
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

যেসব প্যাকেজে এটি প্রয়োগ করা হয় সেগুলির সাইজ পরিবর্তন করতে বাধ্য করে। আমরা শুধু ফুলস্ক্রিন উইন্ডো মোডে ছোট বড় করার অনুমতি দিই, কিন্তু অ্যাপকে ছোট বড় করা যায় এমন মাল্টি-উইন্ডো মোডে জোর করে নিয়ে যাই না।

GWP_ASAN

পরিবর্তন আইডি: ১৪৫৬৩৪৮৪৬
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

অ্যাপে স্যাম্পেল করা নেটিভ মেমরি বাগ শনাক্তকরণ চালু করে।

GWP-ASan ব্যবহার করার ব্যাপারে আরও জানতে, GWP-ASan গাইড দেখুন।

NATIVE_HEAP_ZERO_INIT

পরিবর্তন আইডি: ১৭৮০৩৮২৭২
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

নেটিভ হিপ মেমরি অ্যালোকেশনের অটোমেটিক জিরো-ইনিশিয়ালাইজেশন চালু করুন।

NATIVE_MEMTAG_ASYNC

পরিবর্তন আইডি: ১৪৫৭৭২৯৭২
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

এই প্রসেসে অ্যাসিঙ্ক্রোনাস (ASYNC) মেমরি ট্যাগ চেকিং চালু করুন। এই ফ্ল্যাগ শুধুমাত্র ARM মেমরি ট্যাগিং এক্সটেনশন (MTE) কাজ করে এমন হার্ডওয়্যারকে প্রভাবিত করে।

NATIVE_MEMTAG_SYNC

পরিবর্তন আইডি: ১৭৭৪৩৮৩৯৪
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

এই প্রসেসে সিঙ্ক্রোনাস (SYNC) মেমরি ট্যাগ চেকিং চালু করে। এই ফ্ল্যাগ শুধুমাত্র ARM মেমরি ট্যাগিং এক্সটেনশন (MTE) কাজ করে এমন হার্ডওয়্যারকে প্রভাবিত করে। NATIVE_MEMTAG_ASYNC এবং এই বিকল্প, দুটিই চালু থাকলে, এই বিকল্পটি অগ্রাধিকার পায় এবং MTE, SYNC মোডে চালু হয়।

OVERRIDE_ANY_ORIENTATION

পরিবর্তন আইডি: ২৬৫৪৬৪৪৫৫
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

চালু করা হলে, এই পরিবর্তন নিম্নলিখিত ওরিয়েন্টেশন ওভাররাইড প্রয়োগ করার অনুমতি দেয়, অ্যাক্টিভিটির মাধ্যমে অনুরোধ করা ওরিয়েন্টেশন যাই হোক না কেন:

OVERRIDE_ANY_ORIENTATION_TO_USER

পরিবর্তন আইডি: 310816437
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

চালু করা হলে, SCREEN_ORIENTATION_USER চালু করে, যা অ্যাক্টিভিটির মাধ্যমে অনুরোধ করা যেকোনও ওরিয়েন্টেশন ওভাররাইড করে। ফিক্সড ওরিয়েন্টেশন অ্যাপকে বড় স্ক্রিনের ডিভাইসে ফুলস্ক্রিন হিসেবে ওভাররাইড করা যেতে পারে এবং এই ওভাররাইডের মাধ্যমে ignoreOrientationRequest চালু করা যাবে।

OVERRIDE_CAMERA_COMPAT_DISABLE_FREEFORM_WINDOWING_TREATMENT

পরিবর্তন আইডি: ৩১৪৯৬১১৮৮
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

চালু করা থাকলে, ফিক্সড-ওরিয়েন্টেশন অ্যাপের জন্য ফ্রি-ফর্ম উইন্ডোয়িং মোডে ক্যামেরা কম্প্যাটিবিলিটি ট্রিটমেন্ট থেকে ওভাররাইড প্রয়োগ করা প্যাকেজ বাদ দেয়।

ফ্রি-ফর্ম উইন্ডোইং মোডে, কম্প্যাটিবিলিটি ট্রিটমেন্ট অ্যাপ উইন্ডো লেটারবক্স করে এবং ক্যামেরার বৈশিষ্ট্য পরিবর্তন করে পোর্ট্রেট ডিভাইসে রান করার অনুকরণ করে, যা অ্যাপ সাধারণত পোর্ট্রেট ডিভাইসে আশা করে: পিছনের এবং সামনের ক্যামেরার জন্য যথাক্রমে ৯০ এবং ২৭০ ডিগ্রি সেন্সর রোটেশন এবং ডিসপ্লে রোটেশন ০-তে সেট করা।

যেসব অ্যাপ কম্প্যাটিবিলিটি ট্রিটমেন্টে ভালভাবে সাড়া দেয় না, সেগুলির জন্য কম্প্যাটিবিলিটি ট্রিটমেন্ট বন্ধ করতে এই ফ্ল্যাগ ব্যবহার করুন।

OVERRIDE_CAMERA_RESIZABLE_AND_SDK_CHECK

পরিবর্তন আইডি: ১৯১৫১৪২১৪
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

চালু করা হলে, এই পরিবর্তনটি প্যাকেজগুলিকে বাধ্য করে যে এটিতে প্রয়োগ করা হয়েছে android:resizeableActivity-এর বর্তমান মান উপেক্ষা করুন পাশাপাশি Android 6.0 (API লেভেল 23)-এর সমান বা তার কম টার্গেট SDK এবং অ্যাক্টিভিটিকে রিসাইজ করা যাবে না বলে বিবেচনা করুন। এই ক্ষেত্রে, ক্যামেরা রোটেট ও ক্রপ করার ভ্যালু শুধুমাত্র বর্তমান ডিসপ্লে রোটেশন বিবেচনা করে প্রয়োজনীয় ক্ষতিপূরণের উপর নির্ভর করে।

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

পরিবর্তন আইডি: ১৮৯২২৯৯৫৬
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

চালু করা হলে, এই পরিবর্তনটি যে প্যাকেজে প্রয়োগ করা হয় সেটিকে বাধ্য করে ডিফল্ট ক্যামেরা রোটেট এবং ক্রপ আচরণ ওভাররাইড করতে এবং সর্বদা CaptureRequest.SCALER_ROTATE_AND_CROP_NONE রিটার্ন করতে।

OVERRIDE_DISABLE_MEDIA_PROJECTION_SINGLE_APP_OPTION

পরিবর্তন আইডি: ৩১৬৮৯৭৩২২
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

চালু করা থাকলে, এটি নিশ্চিত করে যে MediaProjection সেশন শুরু করার সময় ব্যবহারকারীদের একটি অ্যাপ বা সম্পূর্ণ স্ক্রিন ক্যাপচার করার বিকল্প দেখানো হবে, যা MediaProjectionConfig#createConfigForDefaultDisplay-এর ব্যবহারকে ওভাররাইড করবে।

OVERRIDE_LANDSCAPE_ORIENTATION_TO_REVERSE_LANDSCAPE

পরিবর্তন আইডি: ২৬৬১২৪৯২৭
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

যে অ্যাপে এটি প্রয়োগ করা হয়েছে, সেটির জন্য SCREEN_ORIENTATION_REVERSE_LANDSCAPE চালু করে। OVERRIDE_ANY_ORIENTATION চালু না থাকলে, অ্যাক্টিভিটিতে ল্যান্ডস্কেপ ওরিয়েন্টেশন নির্দিষ্ট করা থাকলে তবেই SCREEN_ORIENTATION_REVERSE_LANDSCAPE ব্যবহার করা হয়। এই পরিবর্তন চালু করলে, আপনি ডিভাইসের মধ্যে পার্থক্যের জন্য আপনার অ্যাপের আচরণ পরীক্ষা করতে পারবেন, যেখানে ল্যান্ডস্কেপ ওরিয়েন্টেশন Surface.ROTATION_90-এর সাথে এবং ডিভাইস যেখানে এটি Surface.ROTATION_270-এর সাথে সম্পর্কিত।

OVERRIDE_LAYOUT_IN_DISPLAY_CUTOUT_MODE

পরিবর্তন আইডি: ৩৩২৬৭৯৫২৫
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

চালু করা থাকলে, ডিসপ্লে কাট-আউট মোডের আচরণে লেআউট ওভাররাইড করে। এজ-টু-এজ এনফোর্স করা না থাকলে তবেই এটি প্রযোজ্য হবে।

OVERRIDE_MIN_ASPECT_RATIO

পরিবর্তন আইডি: ১৭৪০৪২৯৮০
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

এই পরিবর্তনটি হল সেইসব পরিবর্তনের গেটকিপার যা প্রদত্ত ন্যূনতম অ্যাস্পেক্ট রেশিও প্রয়োগ করে। এই পরিবর্তন চালু করলে নিম্নলিখিত ন্যূনতম অ্যাস্পেক্ট রেশিও প্রয়োগ করা যাবে:

কোনও অ্যাপ প্যাকেজের জন্য এই পরিবর্তন চালু করা হলে, অ্যাপের ম্যানিফেস্টে দেওয়া ন্যূনতম অ্যাস্পেক্ট রেশিও ওভাররাইড করে সবচেয়ে বড় চালু করা অ্যাস্পেক্ট রেশিওতে সেট করা হয়, যদি না অ্যাপের ম্যানিফেস্ট ভ্যালু আরও বেশি হয়।

OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN

পরিবর্তন আইডি: 218959984
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

চালু করা থাকলে, উপলভ্য সব স্ক্রিন স্পেস ব্যবহার করার জন্য পোর্ট্রেট ফুলস্ক্রিনে ন্যূনতম অ্যাস্পেক্ট রেশিও সংক্রান্ত বিধিনিষেধ ওভাররাইড করে।

OVERRIDE_MIN_ASPECT_RATIO_LARGE

পরিবর্তন আইডি: ১৮০৩২৬৭৮৭
ডিফল্ট অবস্থা: সব অ্যাপের জন্য বন্ধ করা আছে।

যখন OVERRIDE_MIN_ASPECT_RATIO চালু করা থাকে, তখন কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাক্টিভিটির ন্যূনতম অ্যাস্পেক্ট রেশিও OVERRIDE_MIN_ASPECT_RATIO_LARGE_VALUE-এর দ্বারা নির্ধারিত একটি বড় মানে সেট করা হয়।

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

পরিবর্তন আইডি: ১৮০৩২৬৮৪৫
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

এছাড়াও, OVERRIDE_MIN_ASPECT_RATIO চালু করা থাকলে, কোনও প্যাকেজের জন্য এই পরিবর্তন চালু করলে, অ্যাক্টিভিটির ন্যূনতম অ্যাস্পেক্ট রেশিও OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE-এর দ্বারা নির্ধারিত মিডিয়াম ভ্যালুতে সেট করা হয়।

OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA

আইডি পরিবর্তন করুন: ৩২৫৫৮৬৮৫৮
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

চালু করা হলে, এমন ট্রিটমেন্টকে সীমাবদ্ধ করে যা প্রদত্ত ন্যূনতম অ্যাস্পেক্ট রেশিও প্রয়োগ করতে বাধ্য করে যাতে সেগুলি শুধুমাত্র তখনই প্রয়োগ করা হয় যখন কোনও অ্যাপ ক্যামেরার সাথে কানেক্ট করা থাকে।

OVERRIDE_MIN_ASPECT_RATIO_PORTRAIT_ONLY

পরিবর্তন আইডি: ২০৩৬৪৭১৯০
ডিফল্ট অবস্থা: সব অ্যাপের জন্য চালু করা আছে।

এছাড়াও, OVERRIDE_MIN_ASPECT_RATIO চালু করা থাকলে, এই পরিবর্তন অন্য যেকোনও পরিবর্তনকে সীমিত করে যা কোনও অ্যাক্টিভিটির ন্যূনতম অ্যাস্পেক্ট রেশিওকে নির্দিষ্ট ভ্যালুতে সেট করতে বাধ্য করে—যেমন OVERRIDE_MIN_ASPECT_RATIO_LARGE এবং OVERRIDE_MIN_ASPECT_RATIO_MEDIUM—এমন অ্যাক্টিভিটির ক্ষেত্রে যেগুলির পোর্ট্রেট ওরিয়েন্টেশনও আছে।

OVERRIDE_RESPECT_REQUESTED_ORIENTATION

পরিবর্তন আইডি: ২৩৬২৮৩৬০৪
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

চালু করা হলে, এই পরিবর্তন সেইসব প্যাকেজ বাদ দেয় যেগুলি ডিভাইস প্রস্তুতকারকের সেট করা ওরিয়েন্টেশন সংক্রান্ত বিধিনিষেধ উপেক্ষা করার সুবিধা থেকে প্রয়োগ করা হয়।

OVERRIDE_UNDEFINED_ORIENTATION_TO_NOSENSOR

পরিবর্তন আইডি: ২৬৫৪৫১০৯৩
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

যে অ্যাপে এটি প্রয়োগ করা হয়েছে, সেটির জন্য SCREEN_ORIENTATION_NOSENSOR চালু করে। OVERRIDE_ANY_ORIENTATION চালু না করা থাকলে, অ্যাক্টিভিটিতে অন্য কোনও নির্দিষ্ট ওরিয়েন্টেশন উল্লেখ না করা থাকলে, শুধুমাত্র তখনই SCREEN_ORIENTATION_NOSENSOR ব্যবহার করা হয়।

OVERRIDE_UNDEFINED_ORIENTATION_TO_PORTRAIT

পরিবর্তন আইডি: ২৬৫৪৫২৩৪৪
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

যে অ্যাপে এটি প্রয়োগ করা হয়েছে, সেটির জন্য SCREEN_ORIENTATION_PORTRAIT চালু করে। OVERRIDE_ANY_ORIENTATION চালু না করা থাকলে, অ্যাক্টিভিটিতে অন্য কোনও নির্দিষ্ট ওরিয়েন্টেশন উল্লেখ না করা থাকলে, শুধুমাত্র তখনই SCREEN_ORIENTATION_PORTRAIT ব্যবহার করা হয়।

RATE_LIMIT_TOASTS

পরিবর্তন আইডি: 174840628
ডিফল্ট স্ট্যাটাস: এই পরিবর্তন টগল করা যাবে না। এটি শুধুমাত্র কম্প্যাটিবিলিটি ফ্রেমওয়ার্কের মাধ্যমে লগ করা হয়।

সীমিত সময়ের মধ্যে ব্যবহারকারীকে অনেক বেশি টোস্ট দেখানোর মাধ্যমে ওভারবার্ডেন করা আটকানোর জন্য Toast.show() কলের সংখ্যার উপর রেট লিমিটিং চালু করে। নির্দিষ্ট সময়সীমার মধ্যে অনুমোদিত সংখ্যার চেয়ে বেশি টোস্ট দেখানোর চেষ্টা করলে টোস্ট বাতিল হয়ে যায়।

STPE_SKIP_MULTIPLE_MISSED_PERIODIC_TASKS

পরিবর্তন আইডি: 288912692
ডিফল্ট স্ট্যাটাস: Android 16 (API লেভেল ৩৬) বা তার পরবর্তী যেকোনও ভার্সনকে টার্গেট করে এমন অ্যাপের জন্য চালু করা হয়েছে।

চালু করা থাকলে, অ্যাপ কোনও সঠিক লাইফসাইকেলে ফিরে এলে, scheduleAtFixedRate -এর সর্বাধিক একটি মিস করা এক্সিকিউশন অবিলম্বে এক্সিকিউট করা হয়।

এই পরিবর্তন সম্পর্কে আরও জানতে, Android 16-এর আচরণ পরিবর্তন সংক্রান্ত পৃষ্ঠায় ফিক্সড রেট ওয়ার্ক শিডিউলিং অপ্টিমাইজেশন সংক্রান্ত বিভাগটি দেখুন।

UNIVERSAL_RESIZABLE_BY_DEFAULT

পরিবর্তন আইডি: 357141415
ডিফল্ট স্ট্যাটাস: Android 16 (API লেভেল 36) বা তার পরবর্তী ভার্সনকে টার্গেট করে এমন অ্যাপের জন্য চালু করা হয়েছে।

চালু করা থাকলে, বড় স্ক্রিনে (৬০০ ডিপি-র চেয়ে বেশি চওড়া স্ক্রিন) অ্যাপের ওরিয়েন্টেশন, রিসাইজ করার সুবিধা ও অ্যাস্পেক্ট রেশিও সংক্রান্ত সীমাবদ্ধতা উপেক্ষা করা হয়।

এই পরিবর্তন সম্পর্কে আরও জানতে, Android 16-এর আচরণ পরিবর্তন সংক্রান্ত পৃষ্ঠায় অ্যাডাপ্টিভ লেআউট বিভাগটি দেখুন।

USE_EXPERIMENTAL_COMPONENT_ALIAS

পরিবর্তন আইডি: ১৯৬২৫৪৭৫৮
ডিফল্ট স্ট্যাটাস: সব অ্যাপের জন্য বন্ধ করা আছে।

চালু করা হলে, সিস্টেম "android" প্যাকেজকে কম্পোনেন্ট অ্যালিয়াস ব্যবহার করার অনুমতি দেয়।