如何获取 Android Gradle 插件使用的 R8 版本?

How to get version of R8 that is being used by the Android Gradle Plugin?

如何找出 Android Gradle 插件使用的 R8 版本,比方说 4.0.1?

buildscript {
  repositories {
    google()
    mavenCentral()
  }
  dependencies {
    classpath 'com.android.tools.build:gradle:4.0.1'
  }
}

这可以通过在 Gradle 脚本的任何位置编写 println(com.android.tools.r8.Version.getVersionString()) 并执行任何 Gradle 任务或仅调用 Gradle 包装器来完成。

buildscript {
  repositories {
    google()
    mavenCentral()
  }
  dependencies {
    classpath 'com.android.tools.build:gradle:4.0.1'
  }
}

println(com.android.tools.r8.Version.getVersionString())

输出:

$ ./gradlew

2.0.88 (build 19b089a1d5a73df8f00a27fda8b29b49782c621c from go/r8bot (luci-r8-ci-archive-0-z0tz))

另一种选择是将 --info 传递给 Gradle 构建。

运行 ./gradlew --info app:assembleRelease (AGP 4.1.1) 包括以下信息:

R8 is a new Android code shrinker. If you experience any issues, please file a bug at
https://issuetracker.google.com, using 'Shrinker (R8)' as component name. You can
disable R8 by updating gradle.properties with 'android.enableR8=false'.
Current version is: 2.1.75 (build 7c61a6224c35283ccaad7e85c848e3a71a716763 from go/r8bot (luci-r8-custom-ci-xenial-6-i8ri)).

然而,只有在实际调用 R8 时才会显示。