অ্যান্ড্রয়েড গ্রেডল প্লাগইন 8.1.0 (জুলাই 2023)
সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন
আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
অ্যান্ড্রয়েড গ্রেডল প্লাগইন ৮.১.০ একটি প্রধান রিলিজ যাতে বিভিন্ন ধরণের নতুন বৈশিষ্ট্য এবং উন্নতি অন্তর্ভুক্ত রয়েছে।
নতুন প্রকল্পগুলি এখন বিল্ড কনফিগারেশনের জন্য ডিফল্টরূপে Kotlin DSL ( build.gradle.kts ) ব্যবহার করে। এটি Groovy DSL ( build.gradle ) এর চেয়ে ভালো সম্পাদনার অভিজ্ঞতা প্রদান করে, যার মধ্যে সিনট্যাক্স হাইলাইটিং, কোড সম্পূর্ণকরণ এবং ঘোষণায় নেভিগেশন অন্তর্ভুক্ত রয়েছে। মনে রাখবেন যে আপনি যদি AGP 8.1 এবং বিল্ড কনফিগারেশনের জন্য Kotlin DSL ব্যবহার করেন, তাহলে সেরা অভিজ্ঞতার জন্য আপনার Gradle 8.1 ব্যবহার করা উচিত। আরও জানতে, Kotlin DSL মাইগ্রেশন গাইড দেখুন।
প্রতি-অ্যাপের জন্য স্বয়ংক্রিয় ভাষা সহায়তা
অ্যান্ড্রয়েড স্টুডিও জিরাফ ক্যানারি ৭ এবং এজিপি ৮.১.০-আলফা০৭ দিয়ে শুরু করে, আপনি আপনার অ্যাপটিকে প্রতি-অ্যাপ ভাষার পছন্দগুলি স্বয়ংক্রিয়ভাবে সমর্থন করার জন্য কনফিগার করতে পারেন। আপনার প্রকল্পের সংস্থানগুলির উপর ভিত্তি করে, অ্যান্ড্রয়েড গ্রেডল প্লাগইনটি LocaleConfig ফাইল তৈরি করে এবং চূড়ান্ত ম্যানিফেস্ট ফাইলে এটির একটি রেফারেন্স যুক্ত করে, তাই আপনাকে আর এটি ম্যানুয়ালি করতে হবে না। AGP আপনার অ্যাপ মডিউলের res ফোল্ডার এবং যেকোনো লাইব্রেরি মডিউল নির্ভরতাগুলিতে থাকা সংস্থানগুলি ব্যবহার করে LocaleConfig ফাইলে অন্তর্ভুক্ত করার জন্য লোকেলগুলি নির্ধারণ করে।
মনে রাখবেন যে স্বয়ংক্রিয় প্রতি-অ্যাপ ভাষা বৈশিষ্ট্যটি Android 13 (API স্তর 33) বা তার বেশি চলমান অ্যাপগুলিকে সমর্থন করে। বৈশিষ্ট্যটি ব্যবহার করতে, আপনাকে compileSdkVersion কে 33 বা তার বেশিতে সেট করতে হবে। Android এর পূর্ববর্তী সংস্করণগুলির জন্য প্রতি-অ্যাপ ভাষা পছন্দগুলি কনফিগার করতে, আপনাকে এখনও API এবং ইন-অ্যাপ ভাষা পিকার ব্যবহার করতে হবে।
প্রতি-অ্যাপ ভাষা সমর্থন স্বয়ংক্রিয়ভাবে সক্ষম করতে, একটি ডিফল্ট লোকেল নির্দিষ্ট করুন:
অ্যাপ মডিউলের res ফোল্ডারে, resources.properties নামে একটি নতুন ফাইল তৈরি করুন।
resources.properties ফাইলে, unqualifiedResLocale লেবেল দিয়ে ডিফল্ট লোকেল সেট করুন। লোকেল নাম তৈরি করতে, ঐচ্ছিক স্ক্রিপ্ট এবং অঞ্চল কোডের সাথে ভাষা কোড একত্রিত করুন, প্রতিটিকে একটি ড্যাশ দিয়ে আলাদা করুন:
ভাষা: দুই বা তিন অক্ষরের ISO 639-1 কোড ব্যবহার করুন।
উদাহরণস্বরূপ, যদি আপনার ডিফল্ট লোকেল আমেরিকান ইংরেজি হয়:
unqualifiedResLocale=en-US
AGP এই ডিফল্ট লোকেল এবং আপনার নির্দিষ্ট করা যেকোনো বিকল্প লোকেল , res ফোল্ডারে values-* ডিরেক্টরি ব্যবহার করে, স্বয়ংক্রিয়ভাবে তৈরি LocaleConfig ফাইলে যোগ করে।
ডিফল্টরূপে প্রতি-অ্যাপের জন্য স্বয়ংক্রিয় ভাষা সমর্থন বন্ধ থাকে। বৈশিষ্ট্যটি চালু করতে, module-level build.gradle.kts ফাইলের androidResources {} ব্লকে generateLocaleConfig সেটিংটি ব্যবহার করুন (যদি আপনি Groovy ব্যবহার করেন তবে build.gradle ফাইল):
অ্যান্ড্রয়েড লিন্টে JVM 17 কে লক্ষ্য করে বাইটকোড রয়েছে
AGP 8.1.0-alpha04 দিয়ে শুরু করে, Android Lint-এ JVM 17-কে লক্ষ্য করে বাইটকোড রয়েছে। আপনি যদি কাস্টম লিন্ট চেক লেখেন, তাহলে আপনাকে JDK 17 বা তার উচ্চতর সংস্করণ দিয়ে কম্পাইল করতে হবে এবং আপনার Kotlin কম্পাইলার বিকল্পগুলিতে jvmTarget = '17' উল্লেখ করতে হবে।
নেটিভ লাইব্রেরি কম্প্রেশন সেটিং DSL-এ সরানো হয়েছে
AGP 8.1.0-alpha10 দিয়ে শুরু করে, যদি আপনি ম্যানিফেস্টের পরিবর্তে DSL ব্যবহার করে নেটিভ লাইব্রেরি কম্প্রেশন কনফিগার না করেন তবে আপনি একটি সতর্কতা পাবেন। নিম্নলিখিত নির্দেশিকাটি DSL ব্যবহার করার জন্য আপনার কনফিগারেশন কীভাবে আপডেট করবেন তা ব্যাখ্যা করে। এই আপডেটগুলি তৈরি করতে সহায়তা পেতে, AGP আপগ্রেড সহকারী ( Tools > AGP আপগ্রেড সহকারী ) ব্যবহার করুন।
আনকম্প্রেসড নেটিভ লাইব্রেরি ব্যবহার করতে, ম্যানিফেস্ট থেকে android::extractNativeLibs অ্যাট্রিবিউটটি সরিয়ে ফেলুন এবং module-level build.gradle.kts ফাইলে নিম্নলিখিত কোডটি যোগ করুন (যদি আপনি Groovy ব্যবহার করেন তবে build.gradle ফাইল):
কোনও সাইনিং কনফিগারেশন নির্দিষ্ট না করে এটি সক্ষম করলে AGP প্রোফাইলেবল বা ডিবাগেবল বিল্ড চালানোর সময় ডিফল্ট ডিবাগ সাইনিং কনফিগারেশন ব্যবহার করতে বাধ্য হয়। বিল্ড লেখকদের নির্দিষ্ট প্রোফাইলেলিং সাইনিং কনফিগারেশন ঘোষণা করতে উৎসাহিত করার জন্য এই ফ্ল্যাগটি ডিফল্টরূপে নিষ্ক্রিয় করা হয়।
android.experimental.library.desugarAndroidTest
এজিপি ৮.০
false
এই ফ্ল্যাগটি লাইব্রেরি নির্মাতাদের AAR-কে প্রভাবিত না করে, উদাহরণস্বরূপ লিন্টিংয়ের মাধ্যমে, পরীক্ষামূলক APK-এর জন্য কোর লাইব্রেরি ডিসাগারিং সক্ষম করতে দেয়। আমরা অবশেষে ভেরিয়েন্ট API-তে এই আচরণটি সমর্থন করার পরিকল্পনা করছি।
যদি সক্ষম করা থাকে, তাহলে Gradle Managed Devices একটি ব্যবহারকারী-সংজ্ঞায়িত কাস্টম ডিভাইস প্রকারের অনুমতি দেয় যা একটি প্লাগইন দ্বারা সরবরাহ করা যেতে পারে। আপনি যদি Firebase Test Lab প্লাগইন ব্যবহার করতে চান তবে এই পতাকাটি সক্ষম করতে হবে।
android.lint.printStackTrace
এজিপি ৮.০
false
যদি সক্ষম করা থাকে, তাহলে অ্যান্ড্রয়েড লিন্ট একটি স্ট্যাকট্রেস প্রিন্ট করে যদি এটি ক্র্যাশ হয়। এই ফ্ল্যাগটির LINT_PRINT_STACKTRACE এনভায়রনমেন্ট ভেরিয়েবলের মতোই ক্ষমতা রয়েছে।
যেকোনো এক সময়ে সক্রিয় থাকা সমবর্তী গ্রেডল পরিচালিত ডিভাইসের (AVD) সর্বাধিক সংখ্যা নির্দিষ্ট করে। যদি মান 0 বা ঋণাত্মক হয়, তাহলে ডিভাইসের সর্বোচ্চ সংখ্যা নেই।
[AGP 8.1.0] ./gradlew পরীক্ষা "Unable to find manifest output" দিয়ে ব্যর্থ হয় যদি splits.abi.isEnable এবং testOptions.unitTests.isIncludeAndroidResources উভয়ই সত্য হয়
[AGP 8.1.0] ./gradlew পরীক্ষা "Unable to find manifest output" দিয়ে ব্যর্থ হয় যদি splits.abi.isEnable এবং testOptions.unitTests.isIncludeAndroidResources উভয়ই সত্য হয়
এই পৃষ্ঠার কন্টেন্ট ও কোডের নমুনাগুলি Content License-এ বর্ণিত লাইসেন্সের অধীনস্থ। Java এবং OpenJDK হল Oracle এবং/অথবা তার অ্যাফিলিয়েট সংস্থার রেজিস্টার্ড ট্রেডমার্ক।
2025-11-13 UTC-তে শেষবার আপডেট করা হয়েছে।
[[["সহজে বোঝা যায়","easyToUnderstand","thumb-up"],["আমার সমস্যার সমাধান হয়েছে","solvedMyProblem","thumb-up"],["অন্যান্য","otherUp","thumb-up"]],[["এতে আমার প্রয়োজনীয় তথ্য নেই","missingTheInformationINeed","thumb-down"],["খুব জটিল / অনেক ধাপ","tooComplicatedTooManySteps","thumb-down"],["পুরনো","outOfDate","thumb-down"],["অনুবাদ সংক্রান্ত সমস্যা","translationIssue","thumb-down"],["নমুনা / কোড সংক্রান্ত সমস্যা","samplesCodeIssue","thumb-down"],["অন্যান্য","otherDown","thumb-down"]],["2025-11-13 UTC-তে শেষবার আপডেট করা হয়েছে।"],[],[]]