Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android set signingConfigs每个构建类型的productFlavors_Android_Android Studio_Gradle - Fatal编程技术网

android set signingConfigs每个构建类型的productFlavors

android set signingConfigs每个构建类型的productFlavors,android,android-studio,gradle,Android,Android Studio,Gradle,我当前的配置如下所示: signingConfigs { alpha_beta { storeFile xx storePassword xx keyAlias xx keyPassword xx } release1 { storeFile xx storePassword xx

我当前的配置如下所示:

signingConfigs {
        alpha_beta {
            storeFile xx
            storePassword xx
            keyAlias xx
            keyPassword xx
        }
        release1 {
            storeFile xx
            storePassword xx
            keyAlias xx
            keyPassword xx
        }
        release2 {
            storeFile xx
            storePassword xx
            keyAlias xx
            keyPassword xx
        }
}
不同口味:

productFlavors {
    flavorWhite {
    }

    flavorBlack {
    }
}
以及不同的建筑类型:

buildTypes {
    debug {
        ...
        signingConfig signingConfigs.alpha_beta
    }

    release {
        ...
    }
}
我现在的目标是,对于发布版构建版,我想用签名配置发布1签名配置发布2来签署味白

我尝试了我能想到的一切,以及我能在网上找到的任何东西,包括 ,以及其他许多


我遗漏了什么?谢谢

我不相信你能做到你所要求的。我的建议是这样做:

buildTypes {
    debug {
        ...
        signingConfig signingConfigs.alpha_beta
    }

    release1 {
        ...
        signingConfig signingConfigs.release1
    }

    release2 {
        ...
        signingConfig signingConfigs.release2
    }
}
这将为您提供以下构建变体:

  • flavorWhiteDebug
  • flavorWhiteRelease1
  • flavorWhiteRelease2
  • flavorbackdebug
  • flavorBlackRelease1
  • flavorBlackRelease2
然后,您可以包括一个
variantFilter
,以去除您不想要的变体(即
vovorWhiteRelease2
vorBlackRelease1

variantFilter { variant ->
    if (variant.flavors*.name.contains("flavorWhite")) {
        setIgnore(variant.buildType.name == "release2")
    } else if (variant.flavors*.name.contains("flavorBlack")) {
        setIgnore(variant.buildType.name == "release1")
    }
}
有了此功能,您的构建变体将:

  • flavorWhiteDebug
  • flavorWhiteRelease1
  • flavorbackdebug
  • flavorBlackRelease2