অ্যান্ড্রয়েড গ্রেডল প্লাগইন 8.4.0 (এপ্রিল 2024)

অ্যান্ড্রয়েড গ্রেডল প্লাগইন 8.4.0 একটি বড় রিলিজ যাতে বিভিন্ন ধরনের নতুন বৈশিষ্ট্য এবং উন্নতি রয়েছে।

সামঞ্জস্য

অ্যান্ড্রয়েড গ্রেডল প্লাগইন 8.4 সমর্থন করে সর্বাধিক API স্তর হল API স্তর 34। এখানে অন্যান্য সামঞ্জস্যের তথ্য রয়েছে:

ন্যূনতম সংস্করণ ডিফল্ট সংস্করণ নোট
গ্রেডল 8.6 8.6 আরও জানতে, Gradle আপডেট করা দেখুন।
SDK বিল্ড টুলস 34.0.0 34.0.0 SDK বিল্ড টুল ইনস্টল বা কনফিগার করুন
এনডিকে N/A 26.1.10909125 NDK এর একটি ভিন্ন সংস্করণ ইনস্টল বা কনফিগার করুন
জেডিকে 17 17 আরও জানতে, JDK সংস্করণ সেট করা দেখুন।

Android Gradle প্লাগইন 8.4-এ নিম্নলিখিত নতুন বৈশিষ্ট্যগুলি রয়েছে৷

প্যাচ রিলিজ

অ্যান্ড্রয়েড স্টুডিও জেলিফিশ এবং অ্যান্ড্রয়েড গ্রেডল প্লাগইন 8.4-এ প্যাচ রিলিজের একটি তালিকা নিচে দেওয়া হল।

অ্যান্ড্রয়েড স্টুডিও জেলিফিশ | 2023.3.1 প্যাচ 2 এবং AGP 8.4.2 (জুন 2024)

গুরুত্বপূর্ণ নিরাপত্তা আপডেট: অ্যান্ড্রয়েড স্টুডিও ইগুয়ানাতে উপলব্ধ GitHub প্লাগইনে একটি নিরাপত্তা দুর্বলতা | 2023.2.1 এবং উচ্চতর অননুমোদিত পক্ষগুলির কাছে অ্যাক্সেস টোকেন প্রকাশ করতে পারে।

সমাধান: Jetbrains IntelliJ প্ল্যাটফর্ম পণ্যগুলিতে সমস্যাটির সমাধান করেছে, এবং সমাধানটি এখন Android Studio Jellyfish-এ উপলব্ধ | 2023.3.1 প্যাচ 2 (2023.3.1.20)

স্থিতিশীল চ্যানেলে আপনার যদি ইতিমধ্যেই একটি Android স্টুডিও বিল্ড থাকে, তাহলে আপনি সহায়তা > আপডেটের জন্য চেক করুন (বা অ্যান্ড্রয়েড স্টুডিও > ম্যাকওএসে আপডেটের জন্য চেক করুন ) ক্লিক করে আপডেট পেতে পারেন। অন্যথায়, সর্বশেষ স্থিতিশীল বিল্ড ডাউনলোড করুন

উপরন্তু, আপনি যদি সক্রিয়ভাবে IDE-তে GitHub পুল অনুরোধ কার্যকারিতা ব্যবহার করে থাকেন, আমরা দৃঢ়ভাবে পরামর্শ দিই যে আপনি প্লাগইন দ্বারা ব্যবহৃত যেকোন গিটহাব টোকেন প্রত্যাহার করুন। প্রদত্ত যে প্লাগইনটি OAuth ইন্টিগ্রেশন বা ব্যক্তিগত অ্যাক্সেস টোকেন (PATs) ব্যবহার করতে পারে, অনুগ্রহ করে উভয় পরীক্ষা করুন এবং প্রয়োজনে প্রত্যাহার করুন:

  • OAuth ইন্টিগ্রেশনের জন্য অ্যাক্সেস প্রত্যাহার করতে, অ্যাপ্লিকেশন > অনুমোদিত OAuth অ্যাপে যান এবং JetBrains IDE ইন্টিগ্রেশন টোকেনের অ্যাক্সেস প্রত্যাহার করুন।
  • PAT-এর অ্যাক্সেস প্রত্যাহার করতে, ব্যক্তিগত অ্যাক্সেস টোকেনে যান এবং GitHub প্লাগইনের জন্য জারি করা টোকেন মুছুন। ডিফল্ট টোকেন নামটি হল IntelliJ IDEA GitHub ইন্টিগ্রেশন প্লাগইন , কিন্তু আপনি একটি কাস্টম নাম ব্যবহার করতে পারেন।

টোকেনের জন্য অ্যাক্সেস প্রত্যাহার করার পরে, আপনাকে আবার প্লাগইন সেট আপ করতে হবে, আবার কাজ করার জন্য Git অপারেশন সহ সমস্ত প্লাগইন বৈশিষ্ট্য পেতে হবে।

আমরা কোন অসুবিধার জন্য দুঃখিত এবং সমস্ত ব্যবহারকারীদের তাদের কোড এবং ডেটা সুরক্ষিত করার জন্য অবিলম্বে আপডেট করার জন্য অনুরোধ করছি।

এই ছোটখাট আপডেটে এই বাগ ফিক্সগুলিও অন্তর্ভুক্ত রয়েছে।

অ্যান্ড্রয়েড স্টুডিও জেলিফিশ | 2023.3.1 প্যাচ 1 এবং AGP 8.4.1 (মে 2024)

এই ছোটখাট আপডেটে এই বাগ ফিক্সগুলি অন্তর্ভুক্ত রয়েছে।

লাইব্রেরি ক্লাস সংকুচিত

Android Gradle Plugin 8.4 দিয়ে শুরু করে, যদি একটি Android লাইব্রেরি প্রজেক্ট ছোট করা হয়, তাহলে আন্তঃপ্রকল্প প্রকাশনার জন্য সঙ্কুচিত প্রোগ্রাম ক্লাস প্রকাশিত হবে। এর মানে হল যে যদি কোনো অ্যাপ অ্যান্ড্রয়েড লাইব্রেরি সাবপ্রজেক্টের সঙ্কুচিত সংস্করণের উপর নির্ভর করে, তাহলে APK সঙ্কুচিত অ্যান্ড্রয়েড লাইব্রেরি ক্লাস অন্তর্ভুক্ত করবে। APK-এ ক্লাস অনুপস্থিত থাকলে আপনাকে লাইব্রেরি রাখার নিয়ম সামঞ্জস্য করতে হতে পারে।

যদি আপনি একটি AAR তৈরি এবং প্রকাশ করছেন, আপনার লাইব্রেরি যে স্থানীয় জারগুলির উপর নির্ভর করে সেগুলিকে AAR-তে সঙ্কুচিত করা অন্তর্ভুক্ত করা হবে, যার অর্থ কোড সঙ্কুচিত হবে না।

আগের আচরণে ফিরে যেতে, gradle.properties ফাইলে android.disableMinifyLocalDependenciesForLibraries সেট করুন এবং একটি বাগ ফাইল করুন । AGP এর ভবিষ্যত সংস্করণগুলি এই পতাকাটি সরিয়ে ফেলবে এই পতাকাটি সরিয়ে ফেলবে৷

স্থির সমস্যা

অ্যান্ড্রয়েড গ্রেডল প্লাগইন 8.4.0

স্থায়ী সমস্যা
অ্যান্ড্রয়েড গ্রেডল প্লাগইন
জাভাকম্পাইলের জন্য কেন `--রিলিজ` বিকল্প ব্যবহার করা যাবে না তার জন্য ত্রুটি বার্তা উন্নত করুন
@DoNotCacheByDefault ব্যবহার করে MergeSourceSetFolders এর ক্যাশিং অক্ষম করুন
AGP 8.2.0 এ JaCoCo সংস্করণ সেট করতে অক্ষম৷
DynamicFeatureBuildType অনুপস্থিত isDebuggable
আন্তঃপ্রকল্প খরচের জন্য সংক্ষিপ্ত লাইব্রেরি ক্লাস সঠিকভাবে প্রকাশিত হয় না
ভেরিয়েন্ট#সোর্স API প্রদান করুন যা জেনারেট করা ফাইল বাদ দেয়
এজিপি মডেলগুলিতে জাভা-প্ল্যাটফর্ম প্রকল্প নির্ভরতা থাকে না
ExtractAarTransform অ-পুনরুত্পাদনযোগ্য classes.jar তৈরি করে এমন aars এর জন্য যার কোন classes.jar নেই
ComposeOptions থেকে sourceInformation কনফিগার করার অনুমতি দিন
ক্ষেত্র খুঁজে পাওয়া যাচ্ছে না: বার্তা android.bundle.DeviceSpec-এ sdk_runtime
compileOnlyApi এর জন্য সমর্থন
রিসোর্স প্রসেসিং নিষ্ক্রিয় হলে R8 একটি লাইব্রেরি মডিউলে ব্যর্থ হয়
রূপান্তরের সময় শিল্পকর্মের নাম পরিবর্তন করার ক্ষমতা যোগ করুন
sourceSets.androidMain.resources-এর srcDir হিসাবে টাস্ক আউটপুট যোগ করা একটি টাস্ক নির্ভরতা তৈরি করে না
AndroidPluginVersion.toString() লিডিং 0 অনুপস্থিত
Artifacts.add(FileSystemLocation) আরো সীমাবদ্ধ হওয়া উচিত।
AGP 8.3.0-alpha11 রিলিজ APK তৈরি করে যা android.content.res.Resources$NotFoundException এর সাথে স্টার্টআপে ক্র্যাশ হয়
অ্যানড্রয়েড গ্রেডল প্লাগইন 8.2.0 ইনস্টল করার কাজটি গতিশীল বৈশিষ্ট্য ব্যবহার করে এমন প্রকল্পে ব্যর্থ হয়
IndexOutOfBoundsException এর সাথে AIDL কম্পাইল ব্যর্থ হয়: দৈর্ঘ্য 0 এর জন্য সীমার বাইরে সূচক 0
MergeJavaResourcesTask ইনক্রিমেন্টাল ইনপুট হ্যান্ডলিং সমস্যা
AGP 8.3.0-alpha02 জ্ঞাত নিরাপত্তা দুর্বলতা সহ লাইব্রেরির উপর নির্ভর করে
নির্বাচিত অ্যাক্টিভিটি টেমপ্লেটের জন্য androidx.* নির্ভরতা সহ প্রকল্প প্রয়োজন
এজিপি আপগ্রেড অ্যাসিস্টেন্ট ভুলভাবে মডিউল থেকে গ্রাহকপ্রোগার্ড ফাইলগুলি সরিয়ে দেয়
AGP আপগ্রেড সহকারী অসীমভাবে লোড করে
SourceDirectories#static GenerateBuildConfig টাস্কের উপর নির্ভর করবে না
ট্রানজিটিভ নির্ভরতা থেকে ক্লাসগুলি সমাধান করতে অক্ষম পূর্বরূপ রচনা করুন৷
AGP 8.3 টাস্কের জন্য zipApks ব্রেক করে
অ্যান্ড্রয়েড এপিকে প্যাকেজ করা AndroidX ডেস্কটপ শিল্পকর্ম
লিন্ট
লিন্ট টেস্টিং ফ্রেমওয়ার্কের GradleModelMocker লাইব্রেরি সংস্করণ সেট করার অনুমতি দেয় না
Lint K2 UAST: UCallableReferenceExpression ভুল কোয়ালিফায়ার টাইপ রিপোর্ট করে
UseK2Uast=সত্য ওভারলোড ফাংশন সহ লিন্ট মিথ্যা পজিটিভ
[BuildTool/Lint] ChecksSdkIntAtLeast কনস্ট্রাক্টর সম্পত্তি
লিন্ট ইন্টিগ্রেশন
লিন্ট একটি KMP নির্ভরতা দ্ব্যর্থিত করতে অক্ষম৷

অ্যান্ড্রয়েড গ্রেডল প্লাগইন 8.4.1

স্থায়ী সমস্যা
অ্যান্ড্রয়েড গ্রেডল প্লাগইন
জাভা 8 টার্গেট করার জন্য JDK 21 অবমূল্যায়নকারী সমর্থন সম্পর্কে একটি সতর্কতা দমন করার অনুমতি দিন
ডেক্সার (D8)
java.lang.VerifyError: যাচাইকারী প্রত্যাখ্যান করেছে ক্লাস
অস্পষ্টতার পরে নতুন সংস্করণ R8 ফর্ম্যাট রূপান্তর ত্রুটি৷
ইন্টারমিডিয়েট বিল্ডগুলিতে স্টাবের জন্য সম্পূর্ণ বিশ্বব্যাপী সিন্থেটিক সামগ্রী নাও থাকতে পারে

অ্যান্ড্রয়েড গ্রেডল প্লাগইন 8.4.2

স্থায়ী সমস্যা
অ্যান্ড্রয়েড গ্রেডল প্লাগইন
AGP 8.4 মনে হচ্ছে CI-তে GMD ডাউনলোডগুলি ভেঙে দিয়েছে