1

因此,我一直在尝试使用http://tools.android.com/tech-docs/new-build-system自动化 Android 构建。

我仍然不清楚如何准确地使用构建系统,所以如果有人有这方面的经验或一般的 Gradle 可能能够为我回答以下问题。

使用此构建文件作为参考。

//
// A basic Android application that follows all the conventions
//
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.2'
    }
}
apply plugin: 'android'

android {
    target = "android-15"
    testBuildType = "debug"

    defaultConfig {
        versionCode = 12
        versionName = "2.0"
        minSdkVersion = 16
        targetSdkVersion = 16

        signingStoreLocation = "debug.keystore"
        signingStorePassword = "android"
        signingKeyAlias = "androiddebugkey"
        signingKeyPassword = "android"

        buildConfig "private final static boolean DEFAULT = true;", \
                    "private final static String FOO = \"foo\";"
    }

    buildTypes {
        debug {
            packageNameSuffix = ".debug"

            buildConfig "private final static boolean DEBUG2 = false;"
        }
    }

    sourceSets {

       main {}
       test {}
    }

    aaptOptions {
        noCompress "txt"
    }
}
  1. 您究竟是如何向它添加依赖项以进行构建的?使用 Gradle 的依赖项会给我带来构建错误。
  2. 您将如何创建不同的构建环境?然后从命令行运行这些?
  3. 在 main 和 test 之外的 sourceSets 有什么意义?

感谢您的帮助,除了上述问题之外的任何一般指南将不胜感激。

4

1 回答 1

1

1- 依赖项以常规 gradle 方式添加,例如:

依赖项 { 编译 'com.google.android:support-v4:r7' }

更多信息: http: //gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html

2-不确定你的意思。如果您指的是不同的构建变体,则必须创建产品风格(请参阅http://tools.android.com/tech-docs/new-build-system/using-the-new-build-system)。

从命令行构建,您只需运行“gradle assemble”。请参阅上面的文档。

3- SourceSets 是配置默认配置(main/test)、flavors 和构建类型的源集。与 Java gradle 构建不同,您不能只添加新的源集并让它们自动编译。这就是为什么它位于 android 命名空间 (android.sourcesets) 中,而不是像默认 Java 插件提供的 sourceSets 对象那样位于顶层。

于 2012-12-19T20:47:05.800 回答