android - 对使用 Android Studio 向导生成的签名 apk 使用不同的命名约定

标签 android android-studio gradle apk signing

我的应用程序包含多个 buildFlavors 和三个不同的 buildTypes

我从 Build -> Generate Signed APK... 生成签名的 apk。 (除非别无选择,否则我想继续使用向导而不创建脚本,因为我有一组不断增加的应用程序并且不想每次都修改脚本。)

生成的 apk 以下列模式命名:

app-flavorName-buildType.apk

如何将命名模式更改为如下所示:

app_flavorName_buildType_versionCode.apk

我想做的改变:

  1. versionCode为后缀的文件名
  2. 用下划线替换连字符

我曾经在 ant 中使用 task 完成它,但不确定如何使用 gradle 完成它。

尝试想出一个解决方案,在新模式中立即创建名称,而不是在生成名称后尝试重命名。这可能吗?

我尝试查看 Settings -> Gradle 但没有找到任何东西。我应该寻找其他任何地方吗?

最佳答案

这不是您要找的。

您可以使用您的 build.gradle 来设置此属性:

android {
    //...

    defaultConfig {
        //...
        project.ext.set("archivesBaseName", "app_"+ defaultConfig.versionCode);
    }
}

分配 archivesBaseName 您将获得如下内容:

app_0.9.6-flavorName-buildType.apk

此属性需要 gradle-plugin 1.3.1 或更高版本。

否则您必须在构建后使用任务重命名 apk。

关于android - 对使用 Android Studio 向导生成的签名 apk 使用不同的命名约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34870802/

相关文章:

android - iso-8859-1 与 utf-8 安卓

android - Gradle 看不到根模块

android - 在 Android Studio 中连接到 Firebase 的 Gradle 的当前版本是什么?

android - Activity 生命周期受到保护,而 Fragment 是公开的。为什么?

android - Facebook SDK升级和android.support v7:25

Android Studio gradle 应用程序 :compileDebugAidl Input length = 1

gradle - 添加Google API后出现Gradle错误

gradle - Flyway Gradle 插件 - 循环依赖

java - 无法更新卡中显示的值 - Android 的 Cardslib 库

android - gradlew appengineEndpointsInstallClientLibs不会安装客户端库(但会生成它们)