在我构建Android项目为两个不同的应用程序(付费版和免费版)之前,我更改了每个值和字符串,所以昨天犯了一个大错误。
因此,我正在学习如何使用gradle来构建我的应用程序。
我的应用程序有一些不同之处:
应用程序名称(只需添加后缀“-Free”) -> 值/strings.xml
更改 *.java 文件中的标志
// signingConfigs 被省略。
productFlavors{
free{
packageName "my.app.free"
versionCode 20
signingConfig signingConfigs.freeConfing
copy{
from('/res'){
include '**/*.xml'
}
into 'build/res/'
filter{
String line -> line.replaceAll("android:label=\"@string/app_name\"", "android:label=\"@string/app_name_free\"")
}
}
copy{
from('/src'){
include '**/*.java'
}
into 'build/src/'
filter{
String line -> line.replaceAll("public static final Boolean IS_FULL_VER = true;", "public static final Boolean IS_FULL_VER = false;")
}
}
}
paid{
packageName "my.app.paid"
versionCode 20
signingConfig signingConfigs.paidConfing
}
}
但是,制作的应用没有改变任何东西。
我错过了什么?
buildConfig
函数,只识别buildConfigField
。 - 4emodan