更新我的应用程序时,我想将版本代码和版本名称存储在一个地方,因为 Gradle 需要它并且在应用程序中可见。
Gradle 的一部分:
defaultConfig {
applicationId "my.awesome.app"
minSdkVersion 19
targetSdkVersion 23
versionCode 8
versionName "1.8.0"
}
部分strings.xml:
<string name="app_name">My Awesome App</string>
<string name="app_version_code">8</string>
<string name="app_version_name">v.1</string>
<string name="foo_version">8</string>
<string name="bar_version">.0</string>
<string name="version">Version</string>
我已经在 Manifest.xml 中使用了 strings.xml:
android:versionCode="@string/app_version_code"
android:versionName="@string/app_version_name">
将这些数据放在两个地方对我来说似乎很愚蠢。如何将 strings.xml 中的值导入 gradle?
最佳答案
首先,如果在中指定了
(你做对了吗?)。android:versionCode
和android:versionName
,则无需在AndroidManifest.xml
中指定它们>build.gradle
其次,框架会为您生成一个BuildConfig.java
类,其中包含您在本题范围内所需的所有信息。我假设您出于某种原因需要引用这些值:
因此,您可以引用例如通过您的代码从任何地方获取版本代码
BuildConfig.VERSION_CODE;
关于Android Studio Gradle 使用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42534089/