在这个页上,写着:
versionName — 用作向用户显示的版本号的字符串。 该设置可以指定为原始字符串或对 字符串资源。
我想使用资源作为版本号。类似 @string/version 之类的东西。
怎么走?
谢谢
朱利安
我使用@Yaroslav的答案创建了方法(https://stackoverflow.com/a/37432654/6711554)。这是从字符串文件设置包名称的代码。
def getPackageName() {
try {
def stringsFile = file("./src/main/res/values/string.xml")
return new XmlParser().parse(stringsFile).string.find { [email protected] 'your_package_name' }.text()
}catch(e){
println(e)
return "default.packagename"
}
}
并像
一样使用它 applicationId getPackageName()
您可以从任何资源文件中读取 gradle 中的任何字符串。
尝试以下操作,通过单击“立即同步”按钮或从菜单中选择“文件”->“将项目与 Gradle 文件同步”,将项目与 Gradle 同步。
android {
// ...
defaultConfig {
// The @string-resource only in single quotation marks!
resValue "string", "<your_variable_name>", '@string/<your_string_resource_name>'
}
}
有一个类似的问题,已经得到解答 - Android Gradle Read App Name from strings.xml。 @SamuilYanovski 提供使用像 gradle.properties 这样的配置文件,而不是尝试从 gradle 文件访问 Android 资源。