使用相同的证书签署两个 buildType

Sign two buildTypes with the same certificate

我有一个应用有 2 种产品口味,p1 和 p2 和两种构建类型,调试和发布

当我 运行 android studio 中的应用程序 p1Release 或 p2Release 时,它​​们每个都使用发布证书签名。 但是当我 运行 p1Debug 它是用调试证书签名的。 但是我希望使用发布证书对 p1Debug 进行签名。

我试过以下方法:

android {

    ...
defaultConfig {
    ...
}
productFlavors {

    p1 {
        signingConfig signingConfigs.release
    }
    p2 {
        signingConfig signingConfigs.release
    }
    p3 {
        signingConfig signingConfigs.debug
    }
}




buildTypes {

    debug {
        debuggable true
        minifyEnabled false
    }

    release {
        debuggable false

    }
}

在这里,我希望每当我从 AndroidStudio 构建 p1Debug 时都用发布证书对其进行签名。 但那不会发生。 但是当我 运行 p1Release 它是用发布证书签名的。

如何为 p1Debug 修复它?

*注意当我这样做时:构建 -> 生成签名的 apk -> 和 select 正确的配置,它确实正确签名。

但是当我点击 运行 按钮时我需要它工作

总的来说:

buildTypes {
  debug {
    signingConfig signingConfigs.release
  }
}

如果您希望风味签名配置接管:

buildTypes {
  debug {
    signingConfig null
  }
}