Firebase android:更新依赖项后的Multidex错误

Posted

技术标签:

【中文标题】Firebase android:更新依赖项后的Multidex错误【英文标题】:Firebase android: Multidex error after updating dependencies 【发布时间】:2019-01-05 13:36:48 【问题描述】:

这些是我当前的依赖项,它们工作正常:

我的 build.gradle (app) 中的这些依赖项:

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

我的 build.gradle (project_name) 中的这个依赖:

classpath 'com.google.gms:google-services:3.2.0'

但是当我更新到新版本的 firebase 时,我得到了 multidex 错误:

我的 build.gradle (app) 中的这些依赖项:

compile 'com.google.firebase:firebase-core:16.0.1' 
compile 'com.google.firebase:firebase-database:16.0.1'
compile 'com.google.firebase:firebase-auth:16.0.2'
compile 'com.google.firebase:firebase-ui-database:4.1.0'
compile 'com.google.firebase:firebase-storage:16.0.1'

我的 build.gradle (project_name) 中的这个依赖:

classpath 'com.google.gms:google-services:4.0.1'

问题

所以我的问题是在尝试使用更新的依赖项构建我的项目时出现多 dex 错误。

我有android studio (3.1.3)

为什么会这样?

谢谢。

【问题讨论】:

你是否添加了multidex支持库并设置为启用? 你有multiDexEnabled true How to enable multidexing with the new Android Multidex support library的可能重复 @crammeur 不,我没有启用它。 @Raj 什么是 multidex 支持库 【参考方案1】:

确保修改您的 build.gradle 并启用 multidex。

     defaultConfig 
         minSdkVersion 14 //lower than 14 doesn't support multidex
         targetSdkVersion 22

         //Enabling this multidex support.
         multiDexEnabled true
     

【讨论】:

【参考方案2】:

尝试启用 multidex。

打开项目/app/build.gradle 并添加

defaultConfig 
    multiDexEnabled true

dependencies 
    implementation 'com.android.support:multidex:1.0.3'

并启用 Jetifier。 打开 project/android/app/gradle.properties 并添加以下行。

android.useAndroidX=true
android.enableJetifier=true

【讨论】:

以上是关于Firebase android:更新依赖项后的Multidex错误的主要内容,如果未能解决你的问题,请参考以下文章

添加 Firebase 依赖项后 Gradle 同步失败:打包 APK 期间文件重复

更新依赖项后,如何让 Visual Studio Code IDE 更新类型?

Firebase 与 Swift

单击列表视图项后的图像滑块

Xamarin - 如何更新 Mono.Android 版本以解决依赖关系?

Meteor & Handlebars:每 N 项后的新行