合并代买
This commit is contained in:
@@ -23,3 +23,33 @@ plugins {
|
||||
}
|
||||
|
||||
include ":app"
|
||||
|
||||
// ============================================================
|
||||
// 【Gradle 兼容补丁】flutter_inappwebview_android 1.1.3 的 AGP 9 兼容问题
|
||||
//
|
||||
// 问题:AGP 9 不支持 proguard-android.txt,必须用 proguard-android-optimize.txt。
|
||||
// 插件 build.gradle 写死了 proguard-android.txt → Gradle 解析时就报错
|
||||
// (debug 构建也炸,因为 AGP 9 在解析阶段就校验了这个方法调用)。
|
||||
//
|
||||
// 修复:在 Gradle 解析插件 build.gradle 之前(beforeProject 钩子),
|
||||
// 把插件文件里的字符串替换掉。这个钩子比 Gradle 自带机制还早触发,
|
||||
// 所以能赶在 Gradle 报错前修好。
|
||||
//
|
||||
// 优势:
|
||||
// - Gradle 原生,不依赖 Python/PowerShell
|
||||
// - 跨平台(Windows/Mac/Linux,Gradle 必备)
|
||||
// - 所有同事拉代码后自动生效
|
||||
// - Gradle daemon 每次构建都会重新解析 build.gradle,不会有缓存问题
|
||||
// ============================================================
|
||||
gradle.beforeProject { Project project ->
|
||||
if (project.name == 'flutter_inappwebview_android') {
|
||||
def gradleFile = project.file('build.gradle')
|
||||
def text = gradleFile.text
|
||||
if (text.contains("proguard-android.txt")) {
|
||||
gradleFile.text = text.replace(
|
||||
"proguard-android.txt", "proguard-android-optimize.txt"
|
||||
)
|
||||
println "✅ Patched flutter_inappwebview_android/build.gradle (AGP 9 compat)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user