সামঞ্জস্যপূর্ণ কাঠামো পরিবর্তন (Android 14)

চিত্র ১। ডেভেলপার অপশনের ‘অ্যাপ কম্প্যাটিবিলিটি চেঞ্জেস’ স্ক্রিনে সেই পরিবর্তনগুলো তালিকাভুক্ত করা থাকে যেগুলো আপনি চালু বা বন্ধ করতে পারেন।

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

কম্প্যাটিবিলিটি ফ্রেমওয়ার্ক টুলগুলো ব্যবহার করে আপনি যে কাজগুলো করতে পারেন, তার কয়েকটি নিচে দেওয়া হলো:

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

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

সামঞ্জস্য কাঠামোতে অন্তর্ভুক্ত আচরণগত পরিবর্তনসমূহ

এই বিভাগের তালিকায় অ্যান্ড্রয়েড ১৪-এর কম্প্যাটিবিলিটি ফ্রেমওয়ার্কে অন্তর্ভুক্ত টগলযোগ্য পরিবর্তনগুলো বর্ণনা করা হয়েছে।

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

অ্যান্ড্রয়েড ১৪-এর কম্প্যাটিবিলিটি ফ্রেমওয়ার্কে টগলযোগ্য পরিবর্তনসমূহ

ACCESS_SHARED_IDENTITY

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

যদি অ্যাপটি ActivityOptions এর এমন একটি ইনস্ট্যান্স দিয়ে এই অ্যাক্টিভিটিটি চালু করার মাধ্যমে তার পরিচয় শেয়ার করতে সম্মতি দিয়ে থাকে, যেখানে ActivityOptions.setShareIdentityEnabled(boolean) ফাংশনটির মান ' true দিয়ে কল করা হয়েছে, অথবা যদি চালু হওয়া অ্যাক্টিভিটির UID, লঞ্চিং অ্যাপের UID-এর সমান হয়, তবে লঞ্চিং অ্যাপের পরিচয়ে অ্যাক্সেসের অনুমতি দেওয়া হয়। যখন এই পরিবর্তনটি সক্রিয় করা হয় এবং এই শর্তগুলির মধ্যে একটি পূরণ হয়, তখন অ্যাক্টিভিটিটি যথাক্রমে Activity.getLaunchedFromUid() এবং Activity.getLaunchedFromPackage() ব্যবহার করে লঞ্চিং অ্যাপের UID এবং প্যাকেজ নেম অ্যাক্সেস করতে পারে।

ANR_PRE_UDC_APIS_ON_SLOW_RESPONSES

পরিবর্তন আইডি: ২৫৮২৩৬৮৫৬
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

এটি চালু করা থাকলে, অ্যান্ড্রয়েড ১৩ (এপিআই লেভেল ৩৩) বা তার নিচের সংস্করণের এপিআই এবং কার্যকারিতায় অ্যাপগুলো ধীরগতিতে সাড়া দিলে একটি "অ্যাপ্লিকেশন সাড়া দিচ্ছে না" (ANR) বার্তা প্রদর্শিত হয়।

AUTHORITY_ACCESS_CHECK_CHANGE_ID

পরিবর্তন আইডি: ২০৭১৩৩৭৩৪
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) এবং তার পরবর্তী সংস্করণের জন্য তৈরি অ্যাপগুলোর ক্ষেত্রে, এটি সমস্ত সিঙ্ক-সম্পর্কিত এপিআই-তে কলিং ইউআইডি-র অথরিটি অ্যাক্সেস যাচাই করা সক্ষম করে।

CAMERA_MIC_INDICATORS_NOT_PRESENT

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

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

DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_SENDER

পরিবর্তন আইডি: 244637991
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

যখন কোনো অ্যাপ PendingIntent#send() বা অনুরূপ পদ্ধতি ব্যবহার করে একটি PendingIntent পাঠায়, তখন পেন্ডিং ইন্টেন্টটি শুরু করার জন্য নিজের ব্যাকগ্রাউন্ড অ্যাক্টিভিটি চালু করার বিশেষাধিকার দিতে চাইলে অ্যাপটিকে এখন অবশ্যই সম্মতি জানাতে হবে।

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

DETACH_THROWS_ISE_ONLY

পরিবর্তন আইডি: ২৩৬৮২৫২৫৫
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

#detachImage দ্বারা নিক্ষিপ্ত ব্যতিক্রমটি সংশোধন করার জন্য ফ্ল্যাগ ব্যবহার করুন।

ডকুমেন্টেশন অনুযায়ী, কোনো ত্রুটির ক্ষেত্রে #detachImage মেথডটি IllegalStateException থ্রো করে; তবে এর একটি নেটিভ হেল্পার মেথড RuntimeException থ্রো করত, যদি Image ডিটাচ করার সময় সারফেসটি পরিত্যক্ত হতো।

পূর্বে নথিভুক্ত না থাকা এই ব্যতিক্রমী আচরণটি অ্যান্ড্রয়েড ১৩ (এপিআই লেভেল ৩৩) পর্যন্ত অব্যাহত রয়েছে।

অ্যান্ড্রয়েড ১৩ (এপিআই লেভেল ৩৩)-এর পর, ডকুমেন্টেশন অনুযায়ী নেটিভ হেল্পার মেথডটি শুধুমাত্র IllegalStateExceptions থ্রো করে।

এই পরিবর্তনটি সক্রিয় করা হলে, #detachImage শুধুমাত্র ইমেজ ডিটাচ করার সময় কোনো ত্রুটির সম্মুখীন হলে একটি IllegalStateException থ্রো করবে। Android 13 (API লেভেল 33) এবং এর নিচের সংস্করণকে টার্গেট করা অ্যাপগুলোর জন্য এই আচরণ অপরিবর্তিত থাকবে।

DOWNSCALED

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

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

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

DOWNSCALED_INVERSE

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

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

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

DOWNSCALE_30

পরিবর্তন আইডি: 189970040
ডিফল্ট অবস্থা : সকল অ্যাপের জন্য নিষ্ক্রিয়।

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

DOWNSCALE_35

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

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

DOWNSCALE_40

পরিবর্তন আইডি: 189970038
ডিফল্ট অবস্থা : সকল অ্যাপের জন্য নিষ্ক্রিয়।

যদি 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 ও সক্রিয় করা থাকে, তাহলে কোনো প্যাকেজের জন্য এই পরিবর্তনটি সক্রিয় করলে অ্যাপটি ধরে নেয় যে এটি আসল ডিসপ্লের উল্লম্ব এবং অনুভূমিক রেজোলিউশনের ১১১.১১% রেজোলিউশনযুক্ত একটি ডিসপ্লেতে চলছে।

ENABLE_PLATFORM_MDNS_BACKEND

পরিবর্তন আইডি: ২৭০৩০৬৭৭২
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

অ্যান্ড্রয়েড ১৪ বা তার উচ্চতর সংস্করণকে লক্ষ্য করে তৈরি অ্যাপগুলো ব্যাকএন্ড হিসেবে একটি প্ল্যাটফর্ম-সমন্বিত mDNS ইমপ্লিমেন্টেশন ব্যবহার করে, অন্যদিকে এর পূর্ববর্তী সংস্করণগুলোকে লক্ষ্য করে তৈরি অ্যাপগুলো একটি লিগ্যাসি নেটওয়ার্ক সার্ভিস ডিসকভারি (NSD) ব্যাকএন্ড ব্যবহার করে চলেছে (যেখানে NsdManager ব্যাকএন্ড হিসেবে একটি লিগ্যাসি নেটিভ ডেমন থাকে)।

ENABLE_SELF_CERTIFIED_CAPABILITIES_DECLARATION

পরিবর্তন আইডি: ২৬৬৫২৪৬৮৮
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

অ্যান্ড্রয়েড ১৪ বা তার উচ্চতর সংস্করণকে লক্ষ্য করে তৈরি অ্যাপগুলির জন্য স্ব-প্রত্যয়িত সক্ষমতা যাচাইকরণ সক্রিয় করা হয়েছে। আরও বিস্তারিত জানতে NetworkCapabilities দেখুন।

ENFORCE_PACKAGE_VISIBILITY_FILTERING

পরিবর্তন আইডি: 154726397
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) এবং তার উচ্চতর সংস্করণকে লক্ষ্য করে তৈরি অ্যাপগুলোর ক্ষেত্রে, AccountManager এপিআইগুলো অ্যাক্সেস করার জন্য ম্যানিফেস্টে প্যাকেজ ভিজিবিলিটির প্রয়োজনীয়তা ঘোষণা করা আবশ্যক।

ENFORCE_READ_ONLY_JAVA_DCL

পরিবর্তন আইডি: ২১৮৮৬৫৭০২
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) এবং তার উচ্চতর সংস্করণের জন্য তৈরি অ্যাপগুলোতে, ডাইনামিকভাবে লোড হওয়া সমস্ত ফাইলকে রিড-অনলি হিসেবে চিহ্নিত করা আবশ্যক। এর ফলে, ক্ষতিকারক ব্যক্তিরা ডাইনামিকভাবে লোড হওয়া ফাইলগুলোকে অপ্রত্যাশিতভাবে ওভাররাইট করে ফেলতে পারে না।

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

ENFORCE_STRICT_QUERY_BUILDER

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

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

EXACT_LISTENER_ALARMS_DROPPED_ON_CACHED

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

যেসব সুনির্দিষ্ট অ্যালার্ম AlarmManager.OnAlarmListener কলব্যাকের জন্য অপেক্ষা করে, কলিং অ্যাপটি ক্যাশড অবস্থায় চলে গেলে সেগুলো বাদ পড়ে যায়।

Android 14-এ এক্সাক্ট অ্যালার্মের পরিবর্তনগুলো সম্পর্কে আরও জানতে, “Schedule exact alarms are denied by default” দেখুন।

FGS_TYPE_CHECK_FOR_INSTANT_APPS

পরিবর্তন আইডি: ২৬১০৫৫২৫৫
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

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

এই পরিবর্তন সম্পর্কে আরও জানতে, ফোরগ্রাউন্ড সার্ভিস টাইপের পরিবর্তনগুলো বর্ণনা করা পৃষ্ঠাটি দেখুন।

FGS_TYPE_NONE_DEPRECATION_CHANGE_ID

পরিবর্তন আইডি: ২৫৫০৪২৪৬৫
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

এটি সক্রিয় করা থাকলে, Android 14 (API লেভেল 34) এবং তার উচ্চতর সংস্করণকে লক্ষ্য করে তৈরি অ্যাপগুলি যদি অপ্রচলিত FOREGROUND_SERVICE_TYPE_NONE টাইপ ব্যবহার করে কোনো ফোরগ্রাউন্ড সার্ভিস চালু করে, তাহলে লগে একটি সতর্কবার্তা দেখা যায়।

এই পরিবর্তন সম্পর্কে আরও জানতে, ফোরগ্রাউন্ড সার্ভিস টাইপের পরিবর্তনগুলো বর্ণনা করা পৃষ্ঠাটি দেখুন।

FGS_TYPE_NONE_DISABLED_CHANGE_ID

পরিবর্তন আইডি: ২৫৫০৩৮১১৮
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

এটি সক্রিয় করা থাকলে, Android 14 (API লেভেল 34) এবং তার উচ্চতর সংস্করণকে লক্ষ্য করে তৈরি অ্যাপগুলি যদি অপ্রচলিত FOREGROUND_SERVICE_TYPE_NONE টাইপ ব্যবহার করে কোনো ফোরগ্রাউন্ড সার্ভিস চালু করে, তাহলে একটি ব্যতিক্রম (exception) দেখা দেয়।

এই পরিবর্তন সম্পর্কে আরও জানতে, ফোরগ্রাউন্ড সার্ভিস টাইপের পরিবর্তনগুলো বর্ণনা করা পৃষ্ঠাটি দেখুন।

FGS_TYPE_PERMISSION_CHANGE_ID

পরিবর্তন আইডি: ২৫৪৬৬২৫২২
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

এটি চালু করা থাকলে, অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) এবং তার উচ্চতর সংস্করণকে লক্ষ্য করে তৈরি অ্যাপগুলো যদি কোনো ফোরগ্রাউন্ড সার্ভিসের ধরনের সাথে সম্পর্কিত প্রয়োজনীয় অনুমতি ছাড়া সেই সার্ভিসটি চালু করে, তাহলে একটি SecurityException দেখা দেয়।

এই পরিবর্তন সম্পর্কে আরও জানতে, ফোরগ্রাউন্ড সার্ভিস টাইপের পরিবর্তনগুলো বর্ণনা করা পৃষ্ঠাটি দেখুন।

FORCE_DISABLE_HEVC_SUPPORT

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

কোনো অ্যাপকে HEVC মিডিয়া সমর্থন করা থেকে জোরপূর্বক নিষ্ক্রিয় করুন। অ্যাপগুলোর উচিত তাদের ম্যানিফেস্টে সমর্থিত মিডিয়া সক্ষমতাগুলো ঘোষণা করা, কিন্তু এই ফ্ল্যাগটি ব্যবহার করে কোনো অ্যাপকে 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

পরিবর্তন আইডি: 181146395
ডিফল্ট অবস্থা : সকল অ্যাপের জন্য নিষ্ক্রিয়।

যে প্যাকেজগুলিতে এটি প্রয়োগ করা হয়, সেগুলিকে আকার পরিবর্তন-অযোগ্য করে তোলে।

FORCE_RESIZE_APP

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

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

GWP_ASAN

পরিবর্তন আইডি: 145634846
ডিফল্ট অবস্থা : সকল অ্যাপের জন্য নিষ্ক্রিয়।

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

GWP-ASan ব্যবহার সম্পর্কে আরও জানতে, GWP-ASan নির্দেশিকাটি দেখুন।

IMPLICIT_INTENTS_ONLY_MATCH_EXPORTED_COMPONENTS

পরিবর্তন আইডি: ২২৯৩৬২২৭৩
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) এবং তার উচ্চতর সংস্করণের জন্য তৈরি অ্যাপগুলোতে, ইমপ্লিসিট ইনটেন্টের মাধ্যমে কম্পোনেন্টগুলোকে কল করার জন্য সেগুলোকে অবশ্যই এক্সপোর্ট করতে হবে। যদি কোনো কম্পোনেন্ট এক্সপোর্ট করা না থাকে এবং কল করা না হয়, তবে সেটি রিসিভারদের তালিকা থেকে বাদ পড়ে যায়। এই নিয়মটি বিশেষভাবে অ্যাক্টিভিটি এবং ব্রডকাস্টের ক্ষেত্রে প্রযোজ্য।

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

পরিবর্তন আইডি: ২৬৬২০১৬০৭
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) এবং এর চেয়ে উচ্চতর সংস্করণের জন্য তৈরি অ্যাপগুলোকে প্রতিটি MediaProjection ক্যাপচার সেশনের আগে ব্যবহারকারীর কাছে সম্মতি চাইতে হবে।

এই পরিবর্তন সম্পর্কে আরও জানতে, Android 14-এর আচরণগত পরিবর্তন সংক্রান্ত পৃষ্ঠার সেই অংশটি দেখুন যেখানে বলা হয়েছে যে প্রতিটি MediaProjection ক্যাপচার সেশনের জন্য ব্যবহারকারীর সম্মতি প্রয়োজন

NATIVE_HEAP_ZERO_INIT

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

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

NATIVE_MEMTAG_ASYNC

পরিবর্তন আইডি: 145772972
ডিফল্ট অবস্থা : সকল অ্যাপের জন্য নিষ্ক্রিয়।

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

NATIVE_MEMTAG_SYNC

পরিবর্তন আইডি: 177438394
ডিফল্ট অবস্থা : সকল অ্যাপের জন্য নিষ্ক্রিয়।

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

OVERRIDE_ANY_ORIENTATION

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

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

OVERRIDE_CAMERA_RESIZABLE_AND_SDK_CHECK

পরিবর্তন আইডি: 191514214
ডিফল্ট অবস্থা : সকল অ্যাপের জন্য নিষ্ক্রিয়।

সক্রিয় করা হলে, এই পরিবর্তনটি যে প্যাকেজগুলিতে প্রয়োগ করা হয় সেগুলিকে android:resizeableActivity এর বর্তমান মান এবং M বা তার কম টার্গেট SDK উপেক্ষা করতে এবং অ্যাক্টিভিটিটিকে অ-পুনঃআকারযোগ্য হিসাবে বিবেচনা করতে বাধ্য করে। এক্ষেত্রে, ক্যামেরা রোটেট এবং ক্রপের মান শুধুমাত্র বর্তমান ডিসপ্লে রোটেশন বিবেচনা করে প্রয়োজনীয় ক্ষতিপূরণের উপর নির্ভর করে।

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

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

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

OVERRIDE_LANDSCAPE_ORIENTATION_TO_REVERSE_LANDSCAPE

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

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

OVERRIDE_MIN_ASPECT_RATIO

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

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

যখন কোনো অ্যাপ প্যাকেজের জন্য এই পরিবর্তনটি সক্রিয় করা হয়, তখন অ্যাপের ম্যানিফেস্টে দেওয়া সর্বনিম্ন অ্যাসপেক্ট রেশিওটি সর্বোচ্চ সক্রিয় অ্যাসপেক্ট রেশিও দ্বারা প্রতিস্থাপিত হয়, যদি না অ্যাপের ম্যানিফেস্টের মান তার চেয়ে বেশি হয়।

OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN

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

এটি চালু করা হলে, পোর্ট্রেট ফুলস্ক্রিনে উপলব্ধ সম্পূর্ণ স্ক্রিন স্পেস ব্যবহার করার জন্য সর্বনিম্ন অ্যাস্পেক্ট রেশিওর সীমাবদ্ধতা উপেক্ষা করা হয়।

OVERRIDE_MIN_ASPECT_RATIO_LARGE

পরিবর্তন আইডি: 180326787
ডিফল্ট অবস্থা : সকল অ্যাপের জন্য নিষ্ক্রিয়।

যখন OVERRIDE_MIN_ASPECT_RATIO ও সক্রিয় থাকে, তখন কোনো প্যাকেজের জন্য এই পরিবর্তনটি সক্রিয় করলে অ্যাক্টিভিটির সর্বনিম্ন অ্যাসপেক্ট রেশিও OVERRIDE_MIN_ASPECT_RATIO_LARGE_VALUE দ্বারা সংজ্ঞায়িত একটি বৃহৎ মানে সেট হয়ে যায়।

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

পরিবর্তন আইডি: 180326845
ডিফল্ট অবস্থা : সকল অ্যাপের জন্য নিষ্ক্রিয়।

যখন OVERRIDE_MIN_ASPECT_RATIO ও সক্রিয় থাকে, তখন কোনো প্যাকেজের জন্য এই পরিবর্তনটি সক্রিয় করলে অ্যাক্টিভিটির সর্বনিম্ন অ্যাসপেক্ট রেশিও OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE দ্বারা সংজ্ঞায়িত একটি মাঝারি মানে সেট হয়ে যায়।

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

পরিবর্তন আইডি: ১৭৪৮৪০৬২৮
ডিফল্ট অবস্থা : এই পরিবর্তনটি টগল করা যায় না। এটি শুধুমাত্র কম্প্যাটিবিলিটি ফ্রেমওয়ার্ক দ্বারা লগ করা হয়।

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

REJECT_NEGATIVE_NETWORK_ESTIMATES

পরিবর্তন আইডি: ২৫৩৬৬৫০১৫
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

এটি সক্রিয় করা হলে, আনুমানিক নেটওয়ার্ক বাইট অবশ্যই অঋণাত্মক হতে হবে।

REQUIRE_NETWORK_CONSTRAINT_FOR_NETWORK_JOB_WORK_ITEMS

পরিবর্তন আইডি: 241104082
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) এবং তার উচ্চতর সংস্করণকে লক্ষ্য করে তৈরি অ্যাপগুলির ক্ষেত্রে, যদি অন্তর্ভুক্ত JobWorkItem নেটওয়ার্ক ব্যবহারের ইঙ্গিত থাকে, তবে হোস্টিং জবে একটি নেটওয়ার্ক সীমাবদ্ধতা উল্লেখ করা আবশ্যক।

REQUIRE_NETWORK_PERMISSIONS_FOR_CONNECTIVITY_JOBS

পরিবর্তন আইডি: ২৭১৮৫০০০০৯
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) এবং এর পরবর্তী সংস্করণের জন্য তৈরি অ্যাপগুলোকে, কানেক্টিভিটি সীমাবদ্ধতাসহ কোনো জব শিডিউল করার সময় INTERNET এবং ACCESS_NETWORK_STATE উভয় পারমিশন উল্লেখ করতে হবে।

THROW_ON_INVALID_DATA_TRANSFER_IMPLEMENTATION

পরিবর্তন আইডি: 255371817
ডিফল্ট অবস্থা : যেসব অ্যাপ অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) বা তার উচ্চতর সংস্করণকে টার্গেট করে, সেগুলোর জন্য সক্রিয়।

অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪) এবং তার উচ্চতর সংস্করণের জন্য তৈরি অ্যাপগুলোর ক্ষেত্রে, ব্যবহারকারী-প্রবর্তিত ডেটা ট্রান্সফার জব নির্দিষ্ট করার সময় যদি অ্যাপটি প্রয়োজনীয় সমস্ত ডেটা ট্রান্সফার এপিআই সঠিকভাবে প্রয়োগ না করে, তাহলে সিস্টেম একটি এক্সেপশন থ্রো করে।

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

USE_EXPERIMENTAL_COMPONENT_ALIAS

পরিবর্তন আইডি: 196254758
ডিফল্ট অবস্থা : সকল অ্যাপের জন্য নিষ্ক্রিয়।

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