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

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

相容性

Android Gradle 外掛程式 8.8 支援的最高 API 級別為 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] 延遲的 SdkComponents.ndkDirectory 供應器無法產生值,但 android.ndkDirectory API 可正常運作
建構選項:新增「Build Run configuration」選項並設為預設
使用 android.enableBuildConfigAsBytecode=true 時,無法在單元測試中解析 BuildConfig
從套件產生的 APK 不會考量隱私權沙箱支援
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 時,出現「False positive」WrongConstant
設定 http 或 https 意圖篩選器配置時,出現「At least one host must be specified」的 Lint 錯誤
在更多情況下處理 UnknownNullness Lint 的類型用途註解
AGP 8.6.1:迴歸 - 在 Kotlin 的 @LongDef 中使用 [Int].toLong() 時,Lint 會回報 WrongConstant 錯誤
AGP 8.7.0 - Lint 在 NavOptionsBuilder.popUpTo 上出現 RestrictedApi 偽陽性
出現兩次 WrongConstant Lint
Android Studio 未偵測到「MonochromeLauncherIcon:未定義單色圖示」警告
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 檔案時,程式碼檢查失敗

Android Gradle 外掛程式 8.8.1 版

已修正問題
Dexer (D8)
新增 OpenJDK 23 進行測試
縮減器 (R8)
java.lang.AbstractMethodError:接收器類別 [...]$$Lambda$[...] 未定義或繼承介面 [...] 已解析方法 [...] 的實作
Enqueuer 中的 NPE 與記錄 DexCallSite 相關
在呼叫 job?.cancel 時,R8 8.7.18 會導致執行階段空指標例外狀況
java.lang.NoClassDefFoundError:解決方案失敗:Lkotlin/LazyThreadSafetyMode
Monzo 似乎花費過多時間在樹狀圖搖晃上
AGP 8.8 無法建構發布版本:R8:java.lang.NullPointerException:無法讀取欄位「b」,因為「com.android.tools.r8.internal.BS.a(com.android.tools.r8.internal.cR)」的傳回值為空值

Android Gradle 外掛程式 8.8.2

已修正問題
Android Gradle 外掛程式
初始化指令碼 'C:\Users\mypc\AppData\Local\Temp\ijresolvers2.gradle' 行:162
縮減器 (R8)
升級至 AGP 8.8 後,Gson ProGuard 無法正常運作
java.lang.VerifyError:類別遭驗證器拒絕
使用 AGP 8.10.0-alpha04 中所附的 R8 進行壓縮時,Leanback 會當機