我在Android Studio中创建了新的应用程序,并将我的gradle文件添加到两个版本中。遗憾的是IDE为我生成了一些带有前缀adsenseTag
的奇怪构建类型,我不知道如何删除它。
buildTypes {
release {
runProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
debug.initWith(buildTypes.release)
debug {
debuggable true
runProguard false
signingConfig signingConfigs.debug
}
}
productFlavors {
free {
packageName freePackage
buildConfigField "java.lang.String", "AD_SENSE_TAG", "\"$adsenseTagFree\""
}
paid {
packageName paidPackage
buildConfigField "java.lang.String", "AD_SENSE_TAG", "\"$adsenseTagPaid\""
}
}
这是我的Build Variants窗口的屏幕:
答案 0 :(得分:1)
你想用GString表示法($
中的"\"$adsenseTagFree\""
)来完成什么?这就是令人困惑的 - 在我的测试项目中,如果我删除$
,它会正常运行。需要进行一些研究才能确切地知道发生了什么,但我知道它发生在Gradle级别,而不是Android Studio级别,因为从命令行运行gradlew tasks
会显示相同的虚假任务名称。我怀疑它与在构建文件评估/执行过程中扩展GString的确切时间有关。
如果您不需要$
表示法,那么只需删除它;如果你这样做,那就提供你想要用它完成的更多细节。