如何在Gradle构建脚本中获取包名或应用程序ID?

7
我已经从Ant脚本转向Gradle构建脚本。但是我不知道如何在Gradle构建脚本中获取软件包名称或应用程序ID。
2个回答

5
project.afterEvaluate {
    project.android.applicationVariants.all { variant ->
        def applicationId = [variant.mergedFlavor.applicationId, variant.buildType.applicationIdSuffix].findAll().join()
        ...
    }
}

或在 foo.gradle 中定义一个:

// foo.gradle
def appId = 'com.example.bar'
ext.appId = appId

// build.gradle
apply from: './foo.gradle'
...
defaultConfig {
   ...
   applicationId appId
}

// other.gradle you want
apply from: './foo.gradle'
...
task example {
    println(appId)
}

7
如果您的配置文件中有applicationId,则可以使用以下代码打印它:print "ID: ${android.defaultConfig.applicationId}" - mortalis

2

我将重复 @mortalis 写的内容,因为它不是答案,但对我来说确实是答案,在尝试了一些基于答案的方法之后 :)

"${android.defaultConfig.applicationId}"

或者

"${android.namespace}"

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接