在android / gradle projects项目root build.gradle中指定versionCode

时间:2013-11-07 23:49:39

标签: android gradle android-studio

我最近使用生产项目从Eclipse切换到Android Studio(用于测试目的),感觉非常棒。我非常喜欢gradle方式。

在Android Studio中,项目结构看起来(简化)类似这样的

+RandomProject
|-+Random
| |- build.gradle (lets call it build2)
| |- [...]
|- build.gradle (lets call it build1)
|- [..]

build1 文件默认包含以下内容:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

我想知道在( build1 )文件中指定versionName和versionCode是否可能/一个好的做法,以便它将“继承”到 build2 文件。 (如果是的话,怎么样?)

感谢您的投入。

2 个答案:

答案 0 :(得分:19)

您可以使用ExtraPropertiesExtension完成此操作。

RandomProject\build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.
ext.compileSdkVersion=19
ext.buildToolsVersion="19"
ext.versionName="1.0.7"
ext.versionCode=7

RandomProject\Random\build.gradle

android {

    compileSdkVersion rootProject.compileSdkVersion
    buildToolsVersion rootProject.buildToolsVersion

    defaultConfig {
        versionName rootProject.versionName
        versionCode rootProject.versionCode
    }
}

答案 1 :(得分:8)

New Build System网站现在有一个关于此的提示。它与Sergii的答案类似,但略有不同:

在根项目的build.gradle中:

ext {
  compileSdkVersion = 19
  buildToolsVersion = "19.0.1"
}

在所有的android模块中:

android {
  compileSdkVersion rootProject.ext.compileSdkVersion
  buildToolsVersion rootProject.ext.buildToolsVersion
}