我可以在flavor中设置versioncode和versionname,但我喜欢在我的构建类型中设置它们。 这有可能吗?
defaultConfig {
versionCode 1
versionName "1"
}
buildTypes {
specialversion {
versionCode 2 // <--- Doesn't work.
versionName "2" // <--- Doesn't work.
}
}
答案 0 :(得分:1)
Here是一个完整的字段列表,可以在buildType
中进行修改。正如您可能看到的,没有您需要的字段。您最多可以使用versionNameSuffix
。
这应该放在productFlavors
:
defaultConfig {
productFlavors {
specialversion {
versionCode 2 // <--- Doesn't work.
versionName "2" // <--- Doesn't work.
}
}
}
答案 1 :(得分:0)
我通过以下方式解决了这个问题。可能不推荐,但在我的情况下它是一个很好的解决方案。
我在我的buildvariants中使用manifestPlaceholders
替换了AndroidManifest.xml中的值
buildTypes {
demo {
...
manifestPlaceholders = [iconpath: "@drawable/icon", versionCode:"161", versionName:"2.37"]
}
}
我的AndroidManifest.xml有以下内容:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="xxx"
android:versionCode="${versionCode}"
android:versionName="${versionName}"
android:installLocation="auto">