如何使用xml资源设置Andriod versionCode

时间:2017-04-28 14:10:09

标签: android build.gradle

在Android build.gradle中,我想像这样设置versionCode,但它不起作用。 versionName正在运作。

defaultConfig {
   versionCode "@integer/application_version_code"
   versionName "@string/application_version_name"
}

这可能吗?

1 个答案:

答案 0 :(得分:0)

我在versionCode中添加了@integer引用,这是我得到的错误(复制):

Error:(10, 0) Could not find method versionCode() for arguments [@integer/code] 

据我所知,这是因为传递的参数是一个String。 versionCode = integer,不是字符串。

将versionName和-Code移动到Manifest适用于versionName,但versionCode显示此行

  

android:versionCode不能是资源URL,它必须是文字整数

(当清单标签包含:

android:versionName="@string/name"
android:versionCode="@integer/code"

因此,根据我对研究的理解,您不能使用资源URL设置versionCode,它必须在build.gradle中定义,或者将manifest定义为文字整数。

此外,看起来在versionName上使用@string也不行。它必须声明为文字字符串。这意味着没有资源URL。

总结

您无法在versionCode上使用@integer资源。您不能在versionName上使用@string。将它们定义为build.gradle或清单中的文字[整数/字符串]。