Android,用它的GMAPSAPI键构建每个变体

Android,用它的GMAPSAPI键构建每个变体,android,android-gradle-plugin,build.gradle,Android,Android Gradle Plugin,Build.gradle,首先,我要说的是,我对格拉德尔很陌生,所以如果这个问题已经得到回答,我很抱歉。 在我的情况下,我有两种构建类型: buildTypes { prod{ ... } demo{ ... } } 还有两种产品口味: clientA{ applicationId "clientPackageNameA" } clientB{ applicationId "clientPackageNameB"

首先,我要说的是,我对格拉德尔很陌生,所以如果这个问题已经得到回答,我很抱歉。 在我的情况下,我有两种构建类型:

buildTypes {
    prod{
    ...
    }
    demo{
    ...
    }
}
还有两种产品口味:

    clientA{
        applicationId "clientPackageNameA"
    }

    clientB{
        applicationId "clientPackageNameB"
    }
我的树是这样的

src :
    - main:
         -assets
         -gen
         -java
         -res
         AndroidManifest.xml
在我的清单中,我有:

<meta-data 
          android:name="com.google.android.maps.v2.API_KEY"
          android:value="GMAPS_KEY" />

如何为每个变体生成4个具有不同GMAPS_密钥的apk:

-clientA.prod

-clientA.demo

-客户产品

-客户演示

据我所知,占位符适用于Flavor或buildType,但不可能混合buildType和Flavor

如何为每个变体生成4个具有不同GMAPS_密钥的apk

您应该将您的GMaps密钥放入字符串资源(并从清单中引用此资源),然后为要进行的每个构建创建不同的资源文件

如何为每个变体生成4个具有不同GMAPS_密钥的apk


您应该将您的GMaps密钥放入字符串资源中(并从清单中引用此资源),然后为您要进行的每个构建创建不同的资源文件。

在清单中,我将其放入清单中,然后从src src/clientrelease/res/、src/clientdebug/res/、src/clientbreease/res/、src/clientbreease/res/,创建4个目录,src/clientbdebebug/res/其中我放置了一个strings.xml文件,其中包含
。但是当我在清单文件中反编译我的apk时,我只有@string/maps,而没有strings.xmlmorry中定义的值。4个目录如下:src/[flavor][buildType]/res/values/在清单中,我把它放在清单中,这个
,我从src-src/clientrelease/res/,src/clientdebug/res/,src/clientbreease/res/,创建了4个目录,src/clientbdebebug/res/其中我放置了一个strings.xml文件,其中包含
。但在清单文件中反编译apk时,我只有@string/maps,而没有strings.xml4目录中定义的值,比如:src/[flavor][buildType]/res/values/