android - 如何在运行我的 gradle 构建之前在 Android Studio 中设置环境变量

标签 android android-studio gradle android-gradle-plugin

我的 Gradle 构建会查看名为 BUILD_NUMBER 的环境变量,以确定要分配给我的 android 应用程序的版本,如下所示:

def buildNumber = System.getenv("BUILD_NUMBER") ?: "local"

所以只要设置了那个环境变量,就会在 defaultConfig 中使用内部版本号,如下所示:

versionName "1.4.0."+buildNumber

通常,Jenkins 将调用此 Gradle 构建并提供 BUILD_NUMBER 环境变量。

如果我从命令提示符运行 Gradle 构建,我知道我可以设置 BUILD_NUMBER = x。

但是,如果我使用 Android Studio 构建,如何通过 Android Studio 本身设置 BUILD_NUMBER 环境变量?

最佳答案

一种选择是使用可以被环境变量覆盖的 gradle 属性。你可以阅读它here .

If the environment variable name looks like ORG_GRADLE_PROJECT_prop=somevalue, then Gradle will set a prop property on your project object, with the value of somevalue.

这意味着你可以

  1. 像往常一样在 .properties 文件(项目或全局)中设置 BUILD_NUMBER=42
  2. 在您的 CI 中,您可以将环境变量命名为 ORG_GRADLE_PROJECT_BUILD_NUMBER,在您的 CI 构建中覆盖或设置 BUILD_NUMBER

注意:在你的项目根目录下使用gradle.properties,不要修改local.properties

关于android - 如何在运行我的 gradle 构建之前在 Android Studio 中设置环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34941043/

相关文章:

android - 找不到与给定名称匹配的资源(在 'icon' 处,值为 '@mipmap/ic_launcher.png' )

java - Gradle 复制规范 : list contents

java - 在 Activity 中添加后退按钮

java - Android 9.0 (Pie) 不支持异步任务

安卓工作室 : disable design tab or change key binding to open it

android - 从 Maven 导入远程库

java - 带有 Google 依赖项的 Android Studio Gradle assembleDebug 错误

Android 任何适用于离线工作的 android 2.3 或更高版本的语音到文本的 API?

android - 使用 GSON 解析 URL

android - PhoneGap,第一页上的 jQueryMobile pageinit 不触发