首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android即时应用程序中多个构建变体的Firebase构建错误

Android即时应用程序中多个构建变体的Firebase构建错误
EN

Stack Overflow用户
提问于 2018-05-09 18:29:15
回答 1查看 805关注 0票数 3

我正在将Firebase添加到一个具有3 buildTypes的现有应用程序中(调试、暂存和发布)。还有两种版本(),但我只为调试构建启用了模拟:

代码语言:javascript
复制
android.variantFilter { variant ->
    if ((variant.buildType.name.equals('release') || variant.buildType.name.equals('staging'))
            && ((variant.getFlavors().get(0).name.equals('mock')))) {
        variant.setIgnore(true);
    }
}

因此,有3种applicationIds: me.app (版本)、me.app.debug(调试)和me.app.staging (暂存)。很明显,尽管有两个变体(debugLive和debugMock),但只有一个应用程序可用于调试。

在Firebase上,我创建了一个项目,并添加了3个应用程序--每个应用程序ID都有一个。到目前为止,我还没有为这些应用程序提供SHA1密钥。我下载了google-services.json,并将其放在基本功能模块的根目录中。

我现在无法与Gradle同步项目:

代码语言:javascript
复制
More than one variant of project :myapp-base-feature matches the consumer attributes:
  - Configuration ':myapp-base-feature:mockDebugApiElements' variant android-aidl:
      - Found artifactType 'android-aidl' but wasn't required.
      - Required com.android.build.api.attributes.BuildTypeAttr 'debug' and found compatible value 'debug'.
      - Found com.android.build.api.attributes.VariantAttr 'mockDebug' but wasn't required.
      - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
      - Required mocking 'mock' and found compatible value 'mock'.
      - Required org.gradle.usage 'java-api' and found compatible value 'java-api'.
  - Configuration ':myapp-base-feature:mockDebugApiElements' variant android-classes:
      - Found artifactType 'android-classes' but wasn't required.
      - Required com.android.build.api.attributes.BuildTypeAttr 'debug' and found compatible value 'debug'.
      - Found com.android.build.api.attributes.VariantAttr 'mockDebug' but wasn't required.
      - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
      - Required mocking 'mock' and found compatible value 'mock'.
      - Required org.gradle.usage 'java-api' and found compatible value 'java-api'.
  - Configuration ':myapp-base-feature:mockDebugApiElements' variant android-manifest:
      - Found artifactType 'android-manifest' but wasn't required.
      - Required com.android.build.api.attributes.BuildTypeAttr 'debug' and found compatible value 'debug'.
      - Found com.android.build.api.attributes.VariantAttr 'mockDebug' but wasn't required.
      - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
      - Required mocking 'mock' and found compatible value 'mock'.
      - Required org.gradle.usage 'java-api' and found compatible value 'java-api'.
  - Configuration ':myapp-base-feature:mockDebugApiElements' variant android-renderscript:
      - Found artifactType 'android-renderscript' but wasn't required.
      - Required com.android.build.api.attributes.BuildTypeAttr 'debug' and found compatible value 'debug'.
      - Found com.android.build.api.attributes.VariantAttr 'mockDebug' but wasn't required.
      - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
      - Required mocking 'mock' and found compatible value 'mock'.
      - Required org.gradle.usage 'java-api' and found compatible value 'java-api'.
  - Configuration ':myapp-base-feature:mockDebugApiElements' variant jar:
      - Found artifactType 'jar' but wasn't required.
      - Required com.android.build.api.attributes.BuildTypeAttr 'debug' and found compatible value 'debug'.
      - Found com.android.build.api.attributes.VariantAttr 'mockDebug' but wasn't required.
      - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
      - Required mocking 'mock' and found compatible value 'mock'.
      - Required org.gradle.usage 'java-api' and found compatible value 'java-api'.
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-09 18:47:32

将您的Google降级为3.2.1 --这是一个已知的bug,至少包含3.3.1的口味和子模块,很可能是3.3.+

代码语言:javascript
复制
  dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.31"
        classpath 'com.google.gms:google-services:3.2.1' 
        classpath 'io.fabric.tools:gradle:1.25.4'
    }
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50259910

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档