সূত্রটি হ'ল
minSdkVersion <= targetSdkVersion <= compileSdkVersion
minSdkVersion - এমন একটি মার্কার যা একটি ন্যূনতম অ্যান্ড্রয়েড সংস্করণ সংজ্ঞায়িত করে যেখানে অ্যাপ্লিকেশনটি ইনস্টল করতে সক্ষম হবে। এছাড়াও এটি লিঙ্ক দ্বারা ব্যবহৃত কলিং এপিআই প্রতিরোধ করতে ব্যবহার করা হয় যা বিদ্যমান নেই। এছাড়াও এটি বিল্ড টাইমের উপর প্রভাব ফেলে। সুতরাং আপনি বিকাশের সময় সর্বাধিক থেকে মিনিএসডিকি ভার্সনকে ওভাররাইড করতে বিল্ড স্বাদগুলি ব্যবহার করতে পারেন। এটি অ্যান্ড্রয়েড দল আমাদের সরবরাহ করে এমন সমস্ত উন্নতি ব্যবহার করে দ্রুত তৈরি করতে সহায়তা করবে। উদাহরণস্বরূপ জাভা 8 এর কয়েকটি বৈশিষ্ট্য কেবল মিনিএসডিকি ভার্সনের নির্দিষ্ট সংস্করণ থেকে পাওয়া যায়।
টার্গেটএসডিভি ভার্সন - নির্দিষ্ট আচরণ পরিবর্তনগুলি চালু করতে অ্যান্ড্রয়েড সিস্টেম বলে।
উদাহরণ স্বরূপ:
অ্যান্ড্রয়েড 6.০ (এপিআই স্তরের ২৩) Runtime Permissions
প্রবর্তন করা হয়েছিল। আপনি যদি targetSdkVersion
22 এ সেট করেন বা আপনার অ্যাপ্লিকেশনটি কম করে দেয় কোনও রান ব্যবহারকারীকে কোনও অনুমতি দেওয়ার জন্য জিজ্ঞাসা করে না।
অ্যান্ড্রয়েড 8.0 (এপিআই স্তর 26) থেকে শুরু করে, সমস্ত notifications
অবশ্যই একটি চ্যানেলে বরাদ্দ করা উচিত বা এটি প্রদর্শিত হবে না। অ্যানড্রয়েড .1.১ (এপিআই স্তর 25) এবং এর চেয়ে কম চলমান ডিভাইসগুলিতে, ব্যবহারকারীরা কেবলমাত্র প্রতিটি অ্যাপ-অ্যাপ্লিকেশন ভিত্তিতে বিজ্ঞপ্তিগুলি পরিচালনা করতে পারেন (কার্যকরভাবে প্রতিটি অ্যাপ্লিকেশনটিতে অ্যান্ড্রয়েড .1.১ এবং তার চেয়ে কমের উপর একটি চ্যানেল রয়েছে)।
অ্যান্ড্রয়েড 9 (এপিআই স্তর 28) থেকে শুরু হচ্ছে Web-based data directories separated by process
,। যদি targetSdkVersion
28+ হয় এবং আপনি WebView
বিভিন্ন প্রক্রিয়াতে বেশ কয়েকটি তৈরি করেন তবে আপনি পাবেনjava.lang.RuntimeException
compileSdkVersion - আসলে এটি এসডিকে প্ল্যাটফর্ম সংস্করণ এবং গ্রেডল কে বলে যে অ্যান্ড্রয়েড এসডিকে সংকলন করতে ব্যবহার করে। আপনি যখন .java
অ্যানড্রয়েড এসডিকে থেকে নতুন বৈশিষ্ট্যগুলি বা ডিবাগ ফাইলগুলি ব্যবহার করতে চান আপনার কমপাইল এসডকে ভার্সনের যত্ন নেওয়া উচিত। আরও একটি উদাহরণ ব্যবহার করছে AndroidX যে বাহিনী ব্যবহার করতে compileSdkVersion
- স্তর 28. compileSdkVersion
আপনার APK এ অন্তর্ভুক্ত নেই : এটি বিশুদ্ধরূপে এ ব্যবহার করা হয় compile time
। আপনার কম্পাইলএসডিকি ভার্সন পরিবর্তন করা রানটাইম আচরণ পরিবর্তন করে না। এটি উদাহরণস্বরূপ নতুন সংকলক সতর্কতা / ত্রুটি উত্পন্ন করতে পারে। সুতরাং আপনি সর্বদা সর্বশেষতম এসডিকে সংকলন করার জন্য দৃ that়ভাবে সুপারিশ করা হয়। আপনি বিদ্যমান কোডে নতুন সংকলন চেকের সমস্ত সুবিধা পাবেন, সদ্য প্রত্যাখ্যানিত API গুলি এড়িয়ে চলুন এবং নতুন API গুলি ব্যবহারের জন্য প্রস্তুত থাকবেন। আরও একটি ঘটনা হ'লcompileSdkVersion >= Support Library version
আপনি এটি সম্পর্কে এখানে আরও পড়তে পারেন । এছাড়াও আমি আপনাকে অ্যান্ড্রয়েড 8.0 তে মাইগ্রেশনের উদাহরণটি একবার দেখার পরামর্শ দিচ্ছি ।