问题描述
我正在尝试找出一种方法,能够在 gradle 中更改每个构建类型的应用程序的应用程序名称.
I am trying to figure out a way to be able to change my application's app name per build type in gradle.
例如,我希望调试版本具有 <APP_NAME>-debug,而 qa 版本具有 <APP-NAME>-QA.
For instance, I would like the debug version to have <APP_NAME>-debug and the qa version to have <APP-NAME>-QA.
我熟悉:
debug { applicationIdSuffix '.debug' versionNameSuffix '-DEBUG' }
但是,在启动器中,我似乎找不到 gradle 命令来应用应用程序的更改.
However, I can't seem to find a gradle command to apply the change of the app when in the launcher.
推荐答案
如果应用名称"是指 上的 android:label,则最简单的解决方案是将该点指向一个字符串资源(例如,android:label="@string/app_name"),然后在 src/debug 中使用该字符串资源的不??同版本/ 源集.
If by "app name", you mean android:label on <application>, the simplest solution is to have that point at a string resource (e.g., android:label="@string/app_name"), then have a different version of that string resource in a src/debug/ sourceset.
您可以在 这个示例项目中看到这一点,我在 src/debug/res/values/strings.xml 中替换了 app_name,它将应用于 debug 构建.release 构建将使用 src/main/ 中的 app_name 版本.
You can see that in this sample project, where I have a replacement for app_name in src/debug/res/values/strings.xml, which will be applied for debug builds. release builds will use the version of app_name in src/main/.