android - 在 Gradle 产品 flavor 上调试签名配置

我有一个项目,我有几个特定于设备的产品风格,每个风格都需要使用不同的配置进行签名:

productFlavors {
    nexus7 {
        signingConfig signingConfigs.nexus7
    }
    nexus4 {
        signingConfig signingConfigs.nexus4
   }
}

这在构建“发布”变体时非常有用。但是,当使用“调试”变体时(例如,当我构建 Nexus4Debug 时),Gradle 使用的是默认的 android 调试 key 。就我而言,我高度依赖以正确方式对这些构建进行签名,如果使用默认调试 key 签名,我的应用程序相对没用。任何人都知道是否有办法为每个变体指定签名配置?

我知道我可以根据构建类型做到这一点,例如:

buildTypes {
    debug {
        signingConfig signingConfigs.nexus4
    }
}

但这限制了我总是使用相同的签名配置来调试两种风格的构建。

PS - 了解这只是一个边缘用例。这适用于一个企业项目,我们在多个不同的 Nexus 设备上测试自定义 ROM 和系统签名的应用程序。

最佳答案

尝试将此添加到您的 build.gradle。它将指定在构建 debug 构建类型时为每个 flavor 使用哪个 signingConfig:

buildTypes {
    debug {
        productFlavors.nexus4.signingConfig signingConfigs.nexus4
        productFlavors.nexus7.signingConfig signingConfigs.nexus7
    }
}

https://stackoverflow.com/questions/20222229/

相关文章:

msbuild - Mercurial/Kiln + MSBuild + MSTest 的持续集成建

android - 管理 Android 应用商店(谷歌/亚马逊/等)的代码/构建?

c - 在配置脚本中处理 CFLAGS 的最佳实践?

android - 通过 TeamCity 为 Android 持续集成。首选工具?

xcode - 学习和理解 Xcode 构建系统

java - 如何让 Maven 自动重试(从失败的模块恢复)?

gradle - 启动一个 Gradle 守护进程,1 个忙碌和 6 个停止的守护进程无法重用,使用

maven - 在 Android Studio 中优化构建时间

eclipse - noClassDefFoundError 使用 Eclipse 的 Scala

android - 如何使用 Expo CLI 为 android 构建 64 位 native 代