resValue
方法(或任何它被稱爲)允許您在buildTypes
或productFlavors
設置資源值。 有沒有相應的方法得到資源值是由resValue
設置的?如何在build.gradle中獲取資源值?
似乎productFlavors
被buildTypes
之前評估,所以resValue
集buildTypes
優先。我想在調試版本中將「Debug」附加到應用程序名稱中,但我需要獲取在產品風格中設置的值以附加到它。
編輯:我試過馬爾辛 - 科津斯基的建議,使用一個變量,但任何構建類型之前所有產品口味進行評估。因此,這並不工作:
android {
String appName = ""
productFlavors {
Foo {
appName = "Foo"
}
Bar {
appName = "Bar"
}
}
buildTypes {
release {
resValue "string", "app_name", appName
}
debug {
resValue "string", "app_name", appName + " Debug"
}
}
}
在buildTypes
,appName
總是從最後產品風味的價值。所以在這個例子中,所有版本都會收到名稱"Bar"
或"Bar Debug"
。
基本上,我需要一個resValueSuffix
類似於applicationIdSuffix
。顯然沒有這樣的動物存在。 com.android.application
插件是否暴露了我可以用來實現這一目的的任何內容?
http://stackoverflow.com/questions/17275461/how-to-replace-strings-resources-with-android-gradle –
@TimCastelijns Q&A是關於來自'strings.xml'的資源。我的資源是用'resValue'創建的。 –
app_name是否在您的應用程序中除了清單之外的任何地方使用? – cyroxis