Android 如何在 gradle 文件中使用字符串资源

Jul*_*ien 6 resources android gradle

这个页面,它写的是:

versionName — 用作向用户显示的版本号的字符串。此设置可以指定为原始字符串或对字符串资源的引用。

我想使用资源作为版本号。类似 @string/version 的东西。

有什么办法?

谢谢

于连

小智 5

我使用@Yaroslav的答案创建了方法(/sf/answers/2620285811/)。这是从字符串文件设置包名称的代码。

def getPackageName() {
  try {
     def stringsFile = file("./src/main/res/values/string.xml")
     return new XmlParser().parse(stringsFile).string.find { it.@name.equals 'your_package_name' }.text()
  }catch(e){
     println(e)
     return "default.packagename"
  }
}
Run Code Online (Sandbox Code Playgroud)

并像这样使用它

 applicationId getPackageName()
Run Code Online (Sandbox Code Playgroud)

您可以从任何资源文件中读取 gradle 中的任何字符串。


Den*_*nis -1

有一个类似的问题,已经得到解答 - Android Gradle Read App Name from strings.xml。@SamuilYanovski 提供使用像 gradle.properties 这样的配置文件,而不是尝试从 gradle 文件访问 Android 资源。