使用liveData + room 时导入的依赖版本不一致,报错
com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
原本build.gradle这样写:
//lifeCycle依赖
compile "android.arch.lifecycle:runtime:1.0.0-alpha1"
compile "android.arch.lifecycle:extensions:1.0.0-alpha1"
annotationProcessor "android.arch.lifecycle:compiler:1.0.0-alpha1"
//room框架依赖
compile "android.arch.persistence.room:runtime:1.0.0-alpha4"
annotationProcessor "android.arch.persistence.room:compiler:1.0.0-alpha4"
原因:
android.arch 包的版本不同导致,都改成1.0.0-alpha1(改成自己引用的版本号)就好了
解决com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex还有个其他方法:
在build.gradle中加入
compile 'com.android.support:multidex:1.0.1'
然后在 build.gradle 文件中的 defaultConfig 配置中添加配置
multiDexEnabled true
但是在这个问题上没有效果