今天用AS在加入一个library的时候,由于SDK版本不对,导入失败,结果原有的项目gradle又出现问题,编译不通过了,后来把top-level里的android{}去掉问题才解决,后来又出现个大问题
就是multiDex ,解决办法是 在
defaultConfig { applicationId
"com.pokemongo.pokemon"
minSdkVersion
16
targetSdkVersion
24
multiDexEnabled
true
}
加入multiDexEnabled true
然后需要加个这个 也不知道是什么原因
dexOptions {
//incremental = true;
preDexLibraries =
false
javaMaxHeapSize
"4g"
}
然后还必须在
<?xml version=
"1.0"
encoding=
"utf-8"
?><manifest xmlns:android=
"http://schemas.android.com/apk/res/android"
package
=
"com.example.myapp"
> <application android:name=
"android.support.multidex.MultiDexApplication"
> ... </application></manifest>
也就是application
后面加个android:name=
"android.support.multidex.MultiDexApplication"
要不然就会出现
Didn't find class “com.google.firebase.provider.FirebaseInitProvider”
这个错误
后来查了一下什么是multiDex
看下面这篇文章
http://www.mamicode.com/info-detail-1031299.html
解决方法出自于
http://stackoverflow.com/questions/39812558/didnt-find-class-com-google-firebase-provider-firebaseinitprovider
http://stackoverflow.com/questions/37312103/unable-to-get-provider-com-google-firebase-provider-firebaseinitprovider
学生一枚,也不知道原理是什么,希望谁看到了给解释一下
转载请注明原文地址: https://ju.6miu.com/read-5371.html