2
我想在我的build.gradle文件中創建一個新的風格,但它是另一種風格的完整副本。即時通訊爲測試目的。只有applicationid後綴會有所不同。這種味道我想稱爲貝塔。但我希望有一種方法不必重複代碼。因爲它具有與我的分段風格相同的設置,有沒有一種方法可以告訴gradle複製分段風格中相同的設置。我的口味是這樣定義的:android gradle - 如何創建新的產品風味,但重用另一種風格的值?
productFlavors {
def STRING = "String"
def BOOLEAN = "boolean"
def TRUE = "true"
def FALSE = "false"
def FLAVOR = "FLAVOR"
def RETROFIT_LOG_ALL = "RETROFIT_LOG_ALL"
def BASE_ENDPOINT = "BASE_ENDPOINT"
staging {
buildConfigField STRING, BASE_ENDPOINT, '"https://pepsi-staging-api.pmlo.co"'
buildConfigField STRING, BASE_IMGIX_ENDPOINT, '"myappfashion.imgix.net"'
buildConfigField STRING, BASE_ENDPOINT_WEB, '"www.pepsi-staging.pmlo.co"'
buildConfigField BOOLEAN, RETROFIT_LOG_ALL, TRUE
manifestPlaceholders = [appDrawerName: "myapp-Staging"]
ext.enableCrashlytics = false
versionNameSuffix '-STAGING'
applicationIdSuffix 'staging'
}
//why do i have to copy the same settings again, is there a way to just over ride from the staging flavor the things i want changed ?
beta {
buildConfigField STRING, BASE_ENDPOINT, '"https://pepsi-staging-api.pmlo.co"'
buildConfigField STRING, BASE_IMGIX_ENDPOINT, '"myappfashion.imgix.net"'
buildConfigField STRING, BASE_ENDPOINT_WEB, '"www.pepsi-staging.pmlo.co"'
buildConfigField BOOLEAN, RETROFIT_LOG_ALL, TRUE
manifestPlaceholders = [appDrawerName: "myapp-Staging"]
ext.enableCrashlytics = false
versionNameSuffix '-beta' //only these two thigns are different
applicationIdSuffix 'beta'
}
prod {
// applicationId "com.mobile.myapp"
buildConfigField STRING, BASE_ENDPOINT, '"https://api.myappfashion.com"'
buildConfigField STRING, BASE_IMGIX_ENDPOINT, '"myappfashion.imgix.net"'
buildConfigField STRING, BASE_ENDPOINT_WEB, '"www.myappfashion.com"'
buildConfigField BOOLEAN, RETROFIT_LOG_ALL, FALSE
ext.enableCrashlytics = true
manifestPlaceholders = [appDrawerName: "myapp"]
}
}
i just want to override versionNameSuffix & applicationIdSuffix only in beta and copy all values from staging. is there a way not to duplicate code like this example ?
只需使用'defaultConfig'就好像[本答案](https://stackoverflow.com/questions/25994149/is-there-a-way-to-have-a-common-section-with-buildconfigfield-and -resvalue-in-gr) –
我明白你的意思了。有時它會引發默認設置。它只是我希望它具有與另一種風味相同的設置,而無需再次複製所有值。但很好的評論。我認爲沒有辦法做到這一點,因爲我找不到任何東西 – j2emanue