افزایه Android Gradle نسخه ۸.۰.۰ (آوریل ۲۰۲۳)

افزایه Android Gradle نسخه ۸.۰.۰ یک نسخه پخش عمده است که شامل انواع مختلفی از ویژگی‌های جدید و بهبودها است.

سازگاری

حداقل نسخه نسخه پیش‌فرض یادداشت‌ها
Gradle ۸.۰ ۸.۰ برای کسب اطلاعات بیشتر، به‌روزرسانی Gradle را ببینید.
ابزارهای ساخت کیت توسعه نرم‌افزار ‫۳۰.۰.۳ ‫۳۰.۰.۳ «ابزارهای ساخت کیت توسعه نرم‌افزار» را نصب یا پیکربندی کنید.
NDK موجود نیست 25.1.8937393 نسخه دیگری از NDK را نصب یا پیکربندی کنید.
JDK 17 17 برای کسب اطلاعات بیشتر، تنظیم نسخه JDK را ببینید.

نسخه‌های پخش وصله

در زیر فهرستی از نسخه‌های وصله برای «افزایه Android Gradle» نسخه ۸.۰ آمده است.

افزایه Android Gradle نسخه 8.0.2 (مه ۲۰۲۳)

برای دیدن فهرست اشکالات برطرف‌شده در AGP 8.0.2، به مسائل بسته‌شده Android Studio 2022.2.1 مراجعه کنید.

افزایه Android Gradle 8.0.1 (مه ۲۰۲۳)

این به‌روزرسانی جزئی شامل رفع اشکالات زیر است:

مشکلات برطرف‌شده
خطا: «No VersionRequirement with the given id in the table» (هیچ «ملزومات نسخه» با شناسه داده‌شده در جدول وجود ندارد) پس‌از ارتقا دادن AGP از نسخه ۷.۲.۲ به ۷.۴.۰
‫R8‏ NullPointerException در markTypeAsLive‏ AGP 7.4.1
[R8 4.0.53] درستی‌سنجی کلاس سخت در Android 11 ناموفق بود

تغییر مخرب: فضای نام در دستورگان ساخت سطح واحد الزامی است

باید فضای نام را در فایل build.gradle.kts سطح واحد تنظیم کنید، نه در فایل مانیفست. می‌توانید استفاده از دارایی namespace DSL را از AGP 7.3 شروع کنید. برای کسب اطلاعات بیشتر، تنظیم فضای نام را ببینید.

هنگام انتقال به فضای نام DSL، از مشکلات زیر آگاه باشید:

  • نسخه‌های قبلی AGP فضای نام آزمایش را از فضای نام اصلی یا شناسه برنامه به‌اشتباه در برخی موارد استنباط می‌کنند. اگر «دستیار ارتقا AGP» متوجه شود که فضای نام اصلی و فضای نام آزمایش پروژه شما یکسان است، ارتقا را مسدود می‌کند. اگر ارتقا مسدود شده است، باید testNamespace را به‌صورت دستی تغییر دهید و کد منبع خود را مطابق با آن اصلاح کنید.
  • پس‌از تغییر فضای نام آزمایش، ممکن است کد شما کامپایل شود اما آزمایش‌های ابزاری شما در زمان اجرا ناموفق باشد. این اتفاق می‌تواند زمانی رخ دهد که کد منبع آزمایش ابزاری شما به منبعی ارجاع دهد که هم در منبع androidTest و هم در منبع برنامه تعریف شده است.

برای اطلاعات بیشتر، مشکل شماره ۱۹۱۸۱۳۶۹۱ نظر شماره ۱۹ را ببینید.

تغییرات ناگهانی: مقادیر پیش‌فرض گزینه ساخت

از AGP 8.0، مقادیر پیش‌فرض این پرچم‌ها برای بهبود عملکرد ساخت تغییر کرده است. برای دریافت راهنمایی درخصوص تنظیم کد برای پشتیبانی از برخی‌از این تغییرات، از «دستیار ارتقای AGP» (ابزارها > دستیار ارتقای AGP) استفاده کنید. «دستیار ارتقا» شما را در به‌روزرسانی کدتان برای تطبیق با رفتار جدید یا تنظیم پرچم‌ها برای حفظ رفتار قبلی راهنمایی می‌کند.

پرچم مقدار پیش‌فرض جدید مقدار پیش‌فرض قبلی یادداشت‌ها
android.defaults.buildfeatures.buildconfig false true ‫AGP 8.0 به‌طور پیش‌فرض BuildConfig تولید نمی‌کند. باید این گزینه را بااستفاده از DSL در پروژه‌هایی که به آن نیاز دارید مشخص کنید.
android.defaults.buildfeatures.aidl false true ‫AGP 8.0 پشتیبانی از AIDL را به‌طور پیش‌فرض فعال نمی‌کند. باید این گزینه را بااستفاده از زبان دامنه خاص در پروژه‌هایی که به آن نیاز دارید مشخص کنید. این پرچم برنامه‌ریزی شده است که در AGP 9.0 برداشته شود.
android.defaults.buildfeatures.renderscript false true ‫AGP 8.0 پشتیبانی از RenderScript را به‌طور پیش‌فرض فعال نمی‌کند. باید این گزینه را بااستفاده از DSL در پروژه‌هایی که به آن نیاز دارید مشخص کنید. این پرچم برنامه‌ریزی شده است که در AGP 9.0 برداشته شود.
android.nonFinalResIds true false ‫AGP 8.0 به‌طور پیش‌فرض R کلاس با فیلدهای غیرنهایی تولید می‌کند.
android.nonTransitiveRClass true false ‫AGP 8.0 برای منابع تعریف‌شده فقط در واحد فعلی R کلاس تولید می‌کند.
android.enableR8.fullMode true false ‫AGP 8.0 به‌طور پیش‌فرض حالت کامل R8 را فعال می‌کند. برای جزئیات بیشتر، حالت کامل R8 را ببینید.

تغییرات ناگهانی: مقادیر گزینه ساخت اجباری

از AGP 8.0، دیگر نمی‌توانید مقادیر این پرچم‌ها را تغییر دهید. اگر آن‌ها را در فایل gradle.properties مشخص کنید، مقدار نادیده گرفته می‌شود و AGP هشدارهایی را چاپ می‌کند.

پرچم مقدار اعمال‌شده یادداشت‌ها
android.dependencyResolutionAtConfigurationTime.warn true اگر AGP 8.0 درطول مرحله پیکربندی، وضوح پیکربندی را تشخیص دهد، هشداری منتشر می‌کند زیرا این امر بر زمان‌های پیکربندی Gradle تأثیر منفی می‌گذارد.
android.r8.failOnMissingClasses true اگر کلاس‌هایی برای اطمینان از بهینه‌سازی بهتر DEX وجود نداشته باشد، AGP 8.0 ساخت‌هایی را که از R8 استفاده می‌کنند ناموفق می‌کند. برای رفع این مشکل، باید کتابخانه‌های ازقلم‌افتاده یا قوانین نگهداری -dontwarn را اضافه کنید. برای جزئیات بیشتر، هشدارهای کلاس ازدست‌رفته در کوچک‌کننده R8 را ببینید.
android.testConfig.useRelativePath true وقتی پشتیبانی از استفاده از منابع، دارایی‌ها، و مانیفست‌های Android در آزمایش‌های واحد فعال باشد، AGP 8.0 فایل test_config.properties را تولید می‌کند که فقط حاوی مسیرهای نسبی است. این کار تضمین می‌کند که آزمایش‌های واحد Android همیشه بتوانند از حافظه نهان ساخت Gradle استفاده کنند.
android.useNewJarCreator true ‫AGP هنگام ایجاد فایل‌های JAR از کتابخانه Zipflinger استفاده می‌کند تا عملکرد ساخت را بهبود دهد.
android.bundletool.includeRepositoriesInDependencyReport true وقتی افزودن اطلاعات وابستگی کیت توسعه نرم‌افزار در AAB و APK فعال باشد، «افزایه Google برای Android» نسخه ۸.۰ فهرست مخزن‌های پروژه را نیز به این اطلاعات اضافه می‌کند.  برای کسب اطلاعات بیشتر، اطلاعات وابستگی برای «کنسول Play» را ببینید.
android.enableArtProfiles true اکنون نمایه‌های مبنا همیشه تولید می‌شوند. برای جزئیات، نمایه‌های مبنا را ببینید.
android.enableNewResourceShrinker true از پیاده‌سازی جدید کوچک‌کننده منبع به‌طور پیش‌فرض استفاده کنید. کوچک‌کننده منبع جدید از ویژگی‌های پویا پشتیبانی می‌کند.
android.enableSourceSetPathsMap true برای محاسبه نگاشت‌های مسیر منبع نسبی استفاده می‌شود، بنابراین ساخت‌های Gradle اغلب به‌روز هستند.
android.cacheCompileLibResources true اکنون منابع کتابخانه کامپایل‌شده به‌طور پیش‌فرض می‌توانند ذخیره شوند زیرا Gradle فایل‌های منبع را نسبت‌به مکان پروژه ردیابی می‌کند. برای فعال شدن به android.enableSourceSetPathsMap نیاز دارد.
android.disableAutomaticComponentCreation true ‫AGP 8.0 به‌طور پیش‌فرض «عنصر نرم‌افزار» ایجاد نمی‌کند. درعوض، AGP «عناصر نرم‌افزاری» را فقط برای گونه‌هایی ایجاد می‌کند که برای انتشار بااستفاده از DSL انتشار پیکربندی شده‌اند.

پرچم پایدار جدید برای نمایه اجرا

‫AGP پرچم جدید android.settings.executionProfile را دربرمی‌گیرد. از این پرچم برای لغو کردن نمایه اجرای پیش‌فرض از SettingsExtension استفاده کنید. برای کسب اطلاعات بیشتر، مستندات افزایه تنظیمات را ببینید.

برای پیش‌نمایش پرچم‌های آزمایشی، یادداشت‌های انتشار پیش‌نمایش را ببینید.

تخصیص دارایی تنبل Kotlin پشتیبانی نمی‌شود

اگر از Kotlin DSL در Gradle برای ساختن فایل‌های ساخت استفاده می‌کنید، توجه داشته باشید که Android Studio و AGP 8.0 از تخصیص ویژگی آزمایشی بااستفاده از عملگر = پشتیبانی نمی‌کنند. برای کسب اطلاعات بیشتر درباره این ویژگی، به یادداشت‌های انتشار و مستندات مراجعه کنید.

دسته‌های تکلیف «تجزیه‌وتحلیل‌گر ساخت»

از Android Studio Flamingo، «تحلیل‌گر ساخت» نمای پیش‌فرض جدیدی برای وظایفی دارد که بر مدت ساخت تأثیر می‌گذارند. اگر پروژه‌تان از AGP 8.0 یا بالاتر استفاده می‌کند، به‌جای نمایش تکالیف به‌صورت جداگانه، «تجزیه‌وتحلیل‌گر ساخت» آن‌ها را براساس دسته گروه‌بندی می‌کند. برای مثال، وظایف مربوط به «منابع Android»،‏ «Kotlin»، یا «Dexing» با هم گروه‌بندی می‌شوند و سپس براساس مدت ساخت مرتب می‌شوند. این کار به شما کمک می‌کند دسته با بیشترین تأثیر بر زمان ساخت را شناسایی کنید. ازهم بازکردن هر دسته فهرستی از تکالیف مربوطه را نمایش می‌دهد. برای نمایش تکالیف به‌صورت جداگانه، بدون گروه‌بندی، از منو کرکره‌ای گروه‌بندی براساس استفاده کنید.

دسته‌های تکلیف «تجزیه‌وتحلیل‌گر ساختن».

افزایه تنظیمات جدید

‫AGP 8.0.0-alpha09 افزایه تنظیمات جدید را معرفی می‌کند. افزایه تنظیمات به شما امکان می‌دهد پیکربندی‌های سراسری (پیکربندی‌هایی که برای همه واحدها اعمال می‌شود) را در یک مکان متمرکز کنید تا دیگر نیازی به کپی و جای‌گذاری پیکربندی‌ها در چند واحد نداشته باشید. علاوه‌براین، می‌توانید از افزایه تنظیمات برای ایجاد نمایه‌های اجرای ابزار، یا دستورالعمل‌های مختلف برای نحوه اجرای ابزار، و جابه‌جایی بین آن‌ها استفاده کنید.

برای استفاده از افزایه تنظیمات، افزایه را در فایل settings.gradle اعمال کنید:

apply plugin 'com.android.settings'

متمرکز کردن پیکربندی‌های جهانی

برای پیکربندی پیکربندی‌های سراسری، از بلوک جدید android در فایل settings.gradle استفاده کنید. مثالی در اینجا ارائه شده است:

android {
  compileSdk 31
  minSdk 28
  ...
}

نمایه‌های اجرای ابزار

افزایه تنظیمات همچنین به شما امکان می‌دهد برای برخی‌از ابزارها نمایه‌های اجرا ایجاد کنید. نمایه اجرایی تعیین می‌کند ابزار چگونه اجرا شود؛ بسته به محیط می‌توانید نمایه‌های اجرایی مختلفی را انتخاب کنید. در نمایه اجرا، می‌توانید آرگومان‌های ماشین مجازی جاوا را برای ابزار تنظیم کنید و آن را برای اجرا در فرایندی جداگانه پیکربندی کنید. فقط از ابزار R8 پشتیبانی می‌شود.

نمایه‌های اجرا ایجاد کنید و نمایه اجرای پیش‌فرض را در فایل settings.gradle تنظیم کنید، همان‌طور که در مثال زیر نشان داده شده است:

android {
  execution {
    profiles {
      high {
        r8 {
          jvmOptions += ["-Xms2048m", "-Xmx8192m", "-XX:+HeapDumpOnOutOfMemoryError"]
          runInSeparateProcess true
        }
      }
      low {
        r8 {
          jvmOptions += ["-Xms256m", "-Xmx2048m", "-XX:+HeapDumpOnOutOfMemoryError"]
          runInSeparateProcess true
        }
      }
      ci {
        r8.runInSeparateProcess false
      }
    }
    defaultProfile "low"
  }
}

برای ملغی کردن نمایه پیش‌فرض، نمایه دیگری را بااستفاده از android.experimental.settings.executionProfile دارایی در gradle.properties فایل انتخاب کنید:

android.experimental.settings.executionProfile=high

همچنین می‌توانید این دارایی را بااستفاده از خط فرمان تنظیم کنید که به شما امکان می‌دهد گردش کارهای مختلفی راه‌اندازی کنید. برای مثال، اگر گردش کار یکپارچه‌سازی پیوسته دارید، می‌توانید از خط فرمان برای تغییر نمایه اجرا بدون نیاز به تغییر فایل settings.gradle استفاده کنید:

./gradlew assembleRelease \
-Pandroid.experimental.settings.executionProfile=ci

برای اجرای AGP 8.0، به JDK 17 نیاز است

هنگام استفاده از «افزایه Android Gradle» نسخه ۸.۰ برای ساختن برنامه، اکنون برای اجرای Gradle به JDK 17 نیاز است. ‫Android Studio Flamingo‏ JDK 17 را دسته‌بندی می‌کند و Gradle را پیکربندی می‌کند تا به‌طور پیش‌فرض از آن استفاده کند، که یعنی اکثر کاربران Android Studio نیازی به ایجاد هیچ‌گونه تغییر پیکربندی در پروژه‌هایشان ندارند.

اگر نیاز دارید نسخه JDK مورد استفاده AGP را به‌صورت دستی در Android Studio تنظیم کنید، باید از JDK 17 یا بالاتر استفاده کنید.

هنگام استفاده از AGP مستقل از «استودیو Android»، نسخه JDK را با تنظیم JAVA_HOME متغیر محیطی یا -Dorg.gradle.java.home گزینه خط فرمان به دایرکتوری نصب JDK 17 ارتقا دهید.

مشکلات برطرف‌شده

افزایه Android Gradle نسخه ۸.۰.۲

مشکلات برطرف‌شده
Shrinker (R8)
‫R8 درطول ساخت Compose با ArrayIndexOutOfBoundsException ناموفق بود
‫VerifyError: درستی‌سنج کلاس را هنگام استفاده از R8 با Kotlin 1.8.20 رد کرد
‫R8 در AGP 8 سرویس Google Fit را ازکار می‌اندازد
اطلاعات فایل منبع شامل نام‌های باقیمانده‌ای که با نام‌های ورودی هم‌پوشانی دارند به‌درستی نمایش داده نمی‌شود

افزایه Android Gradle نسخه ۸.۰.۱

مشکلات برطرف‌شده
Shrinker (R8)
خطا: «No VersionRequirement with the given id in the table» (هیچ «ملزومات نسخه» با شناسه داده‌شده در جدول وجود ندارد) پس‌از ارتقا دادن AGP از نسخه ۷.۲.۲ به ۷.۴.۰
‫R8‏ NullPointerException در markTypeAsLive‏ AGP 7.4.1
[R8 4.0.53] درستی‌سنجی کلاس سخت در Android 11 ناموفق بود

افزایه Android Gradle نسخه ۸.۰.۰

مشکلات برطرف‌شده
افزایه Android Gradle
خطای ساخت ناپایدار در تکلیف MergeResources
‫JavaPluginConvention و HasConvention منسوخ شده است
مکان فایل برای «میانای برنامه‌سازی کاربردی تبدیل جدید» اشتباه و ناسازگار است
«افزایه Android Gradle» نباید از تابع منسوخ GUtil.toWords(string) استفاده کند
«افزایه Android Gradle» نباید از تابع منسوخ‌شده ConfigureUtil.configure(closure, target) استفاده کند
به‌روزرسانی تست‌های AGP برای استفاده از KGP 1.7.20-Beta
‫Gradle 7.4 ناموفق است (نمی‌توان نمونه‌ای از AnalyticsService ایجاد کرد)
«ثابت شمارشی ناشناخته» جدید از javac در AGP 7.4.0-alpha09
پیکربندی MergeGeneratedProguardFilesCreationAction حتی با روشن بودن حافظه نهان پیکربندی کند است
[AGP] افزودن فهرست منبع تولیدشده به مدل IDE (میانای برنامه‌سازی کاربردی متغیر)
‫JavaPluginConvention و HasConvention منسوخ شده است
به‌طور پیش‌فرض ignorewarnings به R8 اضافه نشود
هشدار دادن درصورت وجود نداشتن فایل‌های ProGuard
‫AGP 7.3.0 همگام‌سازی gradle را برای پروژه‌های پلاتفرم gradle خراب می‌کند
کتابخانه apksig: ApkVerifier$Result.getV4SchemeSigners() به‌عنوان خصوصی علامت‌گذاری شده است
اگر پوشش فعال نباشد، پیکربندی androidJacocoAnt ایجاد نمی‌شود
استفاده از IntDef @در عنصر کتابخانه باعث نمی‌شود annotations.zip در aar تولید شود
نوع فوق مشترکی برای و پیدا نشد
نسخه دارایی gradle از LINT_PRINT_STACKTRACE=true را اضافه کنید
داده‌های جلسه پیش‌ساخته قدیمی درحال بسته‌بندی در AAR
برای رفع هشدار منسوخ شدن و آماده شدن برای Gradle 9.0، از دارایی مقصد به دارایی outputLocation انتقال دهید
هنگام تنظیم تکلیف JavaCompile، پرچم `--release` را درنظر بگیرید
[AGP-7.3.0-beta03] وقتی بعداز تعریف XML خط خالی وجود داشته باشد، ShrinkResourcesNewShrinkerTask ناموفق می‌شود
هدف lintVital به‌طور پیش‌فرض در گونه اشکال‌زدایی اجرا می‌شود
هشدار دادن درصورت وجود نداشتن فایل‌های ProGuard
‫AGP سعی می‌کند kotlinOptions.freeCompilerArgs را در مرحله اجرای تکلیف اضافه کند
همگام‌سازی Gradle ناموفق بود: همگام‌سازی ناموفق بود: دلیل نامشخص است
‫DependencyReportTask با حافظه نهان پیکربندی سازگار نیست
جایگزین کردن منابع با resValue در build.gradle منجر به خطای «منابع تکراری» می‌شود
نوع ساخت «اشکال‌زدایی» کلید امضای پیش‌فرض دارد، بقیه ندارند
استفاده از ویژگی‌های پویا و کاهش منابع باعث خرابی زمان اجرا می‌شود
نوع ساخت «اشکال‌زدایی» کلید امضای پیش‌فرض دارد، بقیه ندارند
دایرکتوری منبع تولیدشده به‌عنوان دایرکتوری Java در ارائه‌دهنده منبع اصلی مدل lint فهرست شده است
‫Gradle 8.0-milestone-2 باعث استثنا در AGP می‌شود
بهینه‌سازی ادغام مانیفست برای برنامه‌ها و کتابخانه
افزودن gradle-settings-api به تولید javadoc
«ثابت شمارشی ناشناخته» جدید از javac در AGP 7.4.0-alpha09
‫AGP 7.4.0-alpha09 ساخت‌هایی تولید می‌کند که در Firebase App Distribution بارگذاری نمی‌شوند
‫lint.xml در واحدها برای بررسی «به‌روز بودن» تکالیف lint درنظر گرفته نمی‌شود
مشکل «افزایه Android Gradle نسخه ۷.۰ و بالاتر» و «آزمایش‌های Android»: منبع: شناسه پیدا نشد
configureCMakeDebug به‌طور نامنظم با استثنای اشاره‌گر تهی ازکار می‌افتد
IllegalAccessError هنگام ارتقا دادن پروژه به AS2022.2.1.5،‏ FireBasePerfPlugin
همگام‌سازی با خطای مبهم «مجموعه حاوی عنصری مطابق با گزاره نیست» انجام نمی‌شود.
«میانای برنامه‌سازی کاربردی ابزار دقیق» وابستگی‌های فایل محلی را تبدیل نمی‌کند
خطای `AnnotationProcessorOptions.arguments are queried` هنگام به‌روزرسانی به نسخه 7.4 Beta 1
انتقال افزایه‌های عمومی Gradle به gradle-api و برداشتن BasePlugin.getExtension
‫r8.jvmArgs استفاده نمی‌شود
‫JDK17 به‌عنوان حداقل نسخه موردنیاز برای AGP
‫AGP 8.0.0 A8 نمایه‌های مبنا را ازکار می‌اندازد
در پیام CheckAarMetadataTask در AGP 8.0، «compileSdkVersion» را به «compileSdk» تغییر دهید
‫AGP 7.4.0-rc01 «میانای برنامه‌سازی کاربردی گونه» را با پیام «پرسش مقدار نگاشت‌شده نقشه(ارائه‌دهنده(java.util.Set)) قبل‌از تکمیل وظیفه «…» پشتیبانی نمی‌شود» خراب می‌کند
مشکلات `com.android.build.gradle.tasks.ShaderCompile` با حافظه نهان پیکربندی
افزودن به منابع جاوا بااستفاده از «میاناهای برنامه‌سازی کاربردی» AGP باعث ازکارافتادن حافظه نهان پیکربندی می‌شود
افزایه Lint بخشی از gradle-api نیست
‫DexingFileDependenciesTask.outputKeepRules دایرکتوری است اما به‌عنوان OutputFile علامت‌گذاری شده است
ارتقا به AGP 7.4 منجر به StackOverflowError می‌شود
‫processDebugUnitTestManifest با جای‌بان‌های مانیفست برای گونه‌های آزمایشی ناموفق است
‫Lint بدون وابستگی به اطلاعات مجموعه‌های منبع دسترسی پیدا می‌کند
خطای ساخت به سطح میانای برنامه‌سازی کاربردی ۳۴ مربوط می‌شود که وجود ندارد
پیام «توصیه می‌کنیم از افزایه جدیدتر Android Gradle استفاده کنید» وقتی افزایه جدیدتری وجود ندارد
‫android.injected.testOnly=false کار نمی‌کند
Dexer (D8)
خطای ادغام Dex مربوط به ساختارهای جهانی پس‌از ارتقا از AS Canary 6 به 7
کتابخانه فراداده Kotlin را به نسخه ۰.۶.۰ به‌روزرسانی کنید
به‌نظر می‌رسد راهکار موقت برای JDK-8272564 در سطح میانای برنامه‌سازی کاربردی ۲۸ تا ۳۰ لازم است
Lint
بررسی کد منبع ResourceType برای منابع Kotlin کار نمی‌کند
‫VersionChecks بررسی‌های محدوده Kotlin را مدیریت نمی‌کند
مثبت کاذب برای InlinedApi وقتی بسته‌بندی شده است
مثبت کاذب Lint درباره «بازیافت» مربوط به openInputStream
[BuildTool/Lint] بررسی ویژگی سازنده ChecksSdkIntAtLeast
‫Lint: ادغام «نتایج جزئی» به‌درستی کار نمی‌کند
«استودیو Android» نسخه مشخص‌شده را به‌اشتباه به‌عنوان قدیمی علامت‌گذاری می‌کند.
‫AndroidDeprecationInspection.DeprecationFilter EP هرگز در فایل android-plugin.xml ثبت نشده است
توضیح بررسی لینت AccessibilityDetector قدیمی است
بررسی‌های Lint SDK_INT باید متغیرهای محلی موقت را درک کند
خطا هنگام جایگزین کردن نوع تابع با نام مستعار نوع در TestMode.TYPE_ALIAS
اشکال: وقتی ObjectAnimator خارج از بلوک کد فعلی ایجاد می‌شود، هشدارهای مثبت کاذبی مبنی بر شروع نشدن آن وجود دارد #38
‫Lint: خطای NPE به‌دلیل پُرسمان نمونه «برنامه» در حالت mergeOnly
قانون NonConstantResourceId نمی‌تواند مقادیر ثابت را از شناسه منبع تشخیص دهد و اختصاص دهد
خطا در شناسه نمایشی نشان داده نمی‌شود
عدم سریال‌سازی نتایج حافظه نهان منابع lint منجر به خطای lint می‌شود (اما باید هشدار باشد)
AGP Flamingo Alpha 8 Lint NewApi Desugar Regression
‫TypedArray#close (API 31) ازقندزدایی نشده است اما وقتی در try-with-resources استفاده می‌شود، AS هشدار نشان نمی‌دهد
‫Lint تبدیل‌های معتبر را برای گیرنده‌های تماس بررسی نمی‌کند
‫Lint فقط تبدیل‌های ایمن را برای میاناهای مستقیماً پیاده‌سازی‌شده بررسی می‌کند، نه میاناهای به‌ارث‌رسیده
ادغام Lint
درحال‌حاضر فایل مبنا ورودی و خروجی تکلیف‌های Lint است
Shrinker (R8)
خطای NPE / ادعا درستی‌سنج CF
پس‌از برداشتن حافظه نهان جستجوی فیلد، پسرفت کنید
‫`:app:minifyVariantWithR8` در AGP 7.4.0-beta02 استثنای NullPointerException را پرتاب می‌کند
‫R8: وقتی از -allowaccessmodification استفاده می‌شود، ClassNotFoundException رخ می‌دهد
افزودن پشتیبانی برای گیرندگان زمینه‌ای در فراداده
java.lang.VerifyError: درستی‌سنج کلاس androidx.compose.ui.graphics.colorspace.o: void androidx.compose.ui.graphics.colorspace.o.(java.lang.Object) را نپذیرفت: void androidx.compose.ui.graphics.colorspace.o.(java.lang.Object): [0x0] نمی‌تواند از شیء نوع «مرجع دقیق»: androidx.compose.ui.graphics.colorspace.o به فیلد نمونه java.lang.Object androidx.compose.ui.graphics.colorspace.n.a دسترسی پیدا کند
AGP 7.4.0/7.3.1 - تلاش برای صف‌بندی کنش در فهرست کاری صف‌بندی‌کننده غیرقابل‌فشار
کوچک‌سازی کد Renderscript: افت عملکرد شدید هنگام ارتقا دادن AGP از ۷.۳.۱ به ۷.۴.۰