Android Gradle 外掛程式 8.8.0 (2025 年 1 月)

Android Gradle 外掛程式 8.8.0 是主要版本,內含多種新功能及改善項目。

相容性

Android Gradle 外掛程式 8.8 支援的最高 API 級別為 35。其他相容性資訊如下:

最低版本 預設版本 附註
Gradle 8.10.2 8.10.2 詳情請參閱「更新 Gradle」一節。
SDK 版本工具 35.0.0 35.0.0 安裝設定 SDK 版本工具。
NDK 27.0.12077973 安裝設定 NDK 其他版本。
JDK 17 17 詳情請參閱「設定 JDK 版本」相關說明。

已修正問題

Android Gradle 外掛程式 8.8.0 版

已修正問題
Android Gradle 外掛程式
請考慮將 JacocoTransform 的輸入類型註解為 @Classpath
com.android.build.api.variant.GeneratesApk 應公開 minSdk
com.android.settings 外掛程式無法辨識 targetSdk
SourceDirectories.addGeneratedSourceDirectory 不適用於多個變體
實作可停用 AGP 最低版本檢查的旗標
AGP 與設定 Kotlin 編譯器選項的互動令人困惑
AGP 應在 com.android.test 專案中,為目標專案 APK 公開 BuiltArtifactLoader
[AGP] Lazy SdkComponents.ndkDirectory 提供者無法產生值,但 eager android.ndkDirectory API 可正常運作
建構選項:新增「建構執行設定」選項,並設為預設選項
使用 android.enableBuildConfigAsBytecode=true 時,BuildConfig 無法在單元測試中解析
從套件產生的 APK 不會考量 Privacy Sandbox 支援
com.android.settings 外掛程式無法辨識 targetSdk
Dexer (D8)
Desugar 程式庫 2.1.0 無法搭配 AGP 8.5.2 使用
Lint
KtAnalysisSessionProvider 與 8.7.0-alpha04 中導入的 Lint 檢查項目不相容
使用 PackageManager.ResolveInfoFlags.of 和 Kotlin 時,出現「偽陽性」WrongConstant
設定 http 或 https 意圖篩選器架構時,發生「至少須指定一個主機」的 Lint 錯誤
在更多 UnknownNullness Lint 的情況下處理型別使用註解
AGP 8.6.1:迴歸 - 在 Kotlin 的 @LongDef 中使用 [Int].toLong() 時,WrongConstant Lint 失敗
AGP 8.7.0 - Lint False Positive RestrictedApi on NavOptionsBuilder.popUpTo
WrongConstant Lint 出現兩次
Android Studio 不會擷取「MonochromeLauncherIcon: Monochrome icon is not defined」警告
AbstractAnnotationDetector 會檢查錯誤的超載函式/建構函式
Lint ImportAliasTestMode 不會為頂層函式建立匯入別名
WrongConstant Lint 出現兩次
AGP 8.8 的新 ObsoleteSdkInt Lint 警告
Lint 檢查出現偽陽性結果:android.permission.SCHEDULE_EXACT_ALARM 權限只會授予系統應用程式
在 Android Studio 中使用 .hasRoute(Route::class) 時,K2 模式會擲回 RestrictedApi 警告
Lint 整合
評估後找不到 Lint 變數工作
匯入含有實作檔案的 AAR 檔案時,Lint 失敗

Android Gradle 外掛程式 8.8.1 版

已修正問題
Dexer (D8)
新增 OpenJDK 23 以進行測試
縮減器 (R8)
java.lang.AbstractMethodError:接收器類別 [...]$$Lambda$[...] 未定義或繼承介面 [...] 的已解析方法 [...] 實作項目
與記錄 DexCallSite 相關的 Enqueuer 中的 NPE
呼叫 job?.cancel 時,R8 8.7.18 會導致執行階段空值指標例外狀況
java.lang.NoClassDefFoundError:Failed resolution of: Lkotlin/LazyThreadSafetyMode
Monzo 似乎在樹狀結構重組中耗費過多時間
AGP 8.8 無法建構發布版本:R8:java.lang.NullPointerException:Cannot read field "b" because the return value of "com.android.tools.r8.internal.BS.a(com.android.tools.r8.internal.cR)" is null`

Android Gradle 外掛程式 8.8.2

已修正問題
Android Gradle 外掛程式
Initialization script 'C:\Users\mypc\AppData\Local\Temp\ijresolvers2.gradle' line: 162
縮減器 (R8)
升級至 AGP 8.8 後,Gson ProGuard 無法正常運作
java.lang.VerifyError:類別遭驗證器拒絕
使用 AGP 8.10.0-alpha04 內含的 R8 縮減 Leanback 時,Leanback 會當機