带有FirebaseUI:com.android.dex.DexException的DexException:多个dex



我正试图在项目中包括Firebase身份验证(特别是使用FirebaseUI身份验证的电子邮件/密码身份验证)。由于我是一个新手,所以我使用了一本书的例子("Firebase Essentials Android Edition")。它们按预期工作,当我被迫使用时问题出现了:

compile 'com.google.firebase:firebase-auth:11.2.0'

而不是书中建议的CCD_ 1版本(为了使用谷歌地图)。注销和删除帐户的功能停止工作。

我已经搜索了信息,正在尽我所能更新。我使用的是安卓Studio 2.3.3。目前,我有以下build.gradle脚本:

projectbuild.gradle:

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
classpath 'com.google.gms:google-services:3.0.0'
}
}
allprojects {
repositories {
jcenter()
maven { url 'https://maven.google.com' }
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}

app build.gradle:

apply plugin: 'com.android.application'
android {
compileSdkVersion 26
buildToolsVersion "26.0.2"
defaultConfig {
applicationId "com.doov.firetest"
minSdkVersion 16
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:26.0.0'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.google.firebase:firebase-auth:11.2.0'
compile 'com.firebaseui:firebase-ui:2.0.1'
compile 'com.firebaseui:firebase-ui-auth:2.0.1'
testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'

但当我构建时,我会遇到下一个错误(我在其他时候也见过,这就是为什么我提出了一个"通用"问题,也许可以解决所有这些类型的问题):

错误:任务执行失败":app:transformClassesWithDexForDebug"。>com.android.build.api.transform.TransformException:com.android.ide.common.prrocess.ProcessException:java.util.concurrent.ExecutionException:com.android.dex.DexException:多个dex文件定义Lcom/google/android/gms/internal/zzeg;

如何解决它
非常感谢您在这件事上花费时间和提供帮助。

您正在使用:

compile 'com.google.firebase:firebase-auth:11.2.0'
compile 'com.firebaseui:firebase-ui:2.0.1'
compile 'com.firebaseui:firebase-ui-auth:2.0.1'

查看官方文档
您需要确保使用所选版本的FirebaseUI所需的相同版本

FirebaseUI Version  ->  Firebase/Play Services Version    
3.1.0              11.4.2
3.0.0              11.4.2 
2.4.0              11.4.0
2.3.0              11.0.4
2.2.0              11.0.4

你必须使用:

compile 'com.google.firebase:firebase-auth:11.4.2'
compile 'com.firebaseui:firebase-ui:3.1.0'
compile 'com.firebaseui:firebase-ui-auth:3.1.0'

或如表中的另一组合。

相关内容

最新更新