apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion "25.0.0"
defaultConfig {
applicationId "com.emperors.raaste"
minSdkVersion 16
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled=true
}
buildTypes {
release {
multiDexEnabled=true
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
packagingOptions {
exclude 'libs/jackson-core-asl-1.9.13.jar'
exclude 'libs/jackson-mapper-asl-1.9.13.jar'
exclude 'META-INF/ASL2.0'
exclude 'META-INF/LICENSE'
exclude 'META-INF/NOTICE'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
}
}
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 files('libs/map_sdk_2.0.jar')
compile 'com.android.support:appcompat-v7:25.0.1'
compile 'com.android.support:support-v4:25.0.1'
compile 'com.android.support:design:25.0.1'
compile 'com.android.support:support-annotations:25.0.1'
compile 'com.google.android.gms:play-services-auth:10.0.1'
compile 'com.google.firebase:firebase-core:10.0.1'
compile 'com.google.firebase:firebase-database:10.0.1'
compile 'com.google.firebase:firebase-auth:10.0.1'
compile 'com.google.firebase:firebase-storage:10.0.1'
compile 'com.theartofdev.edmodo:android-image-cropper:2.3.+'
compile 'com.google.firebase:firebase-messaging:10.0.1'
compile 'com.google.android.gms:play-services:10.0.1'
compile 'com.google.firebase:firebase-invites:10.0.1'
compile 'com.google.firebase:firebase-ads:10.0.1'
testCompile 'junit:junit:4.12'
compile 'com.google.code.gson:gson:2.4'
compile 'com.squareup.picasso:picasso:2.3.2'
compile 'com.android.support:support-vector-drawable:25.0.1'
compile 'com.android.support:recyclerview-v7:25.0.1'
compile 'com.android.support:multidex:1.0.1'
}
apply plugin: 'com.google.gms.google-services'
这是我的gradle文件,我无法解决此问题我刚刚更新了Google服务和存储库,之后我收到此错误无法获取FirebaseInitProvider
我尝试了multidexenable=true
并在MultidexApplication中设置了MultiDexInstall(this);
,我仍然得到同样的例外,是否有人可以帮助我。
答案 0 :(得分:1)
虽然您已尝试启用Multidex,但似乎未正确配置。最有可能的是,您配置Application
课程的方式有问题。如果由于Multidex以外的原因不需要继承Application
,只需使用提供的MultiDexApplication
并使用以下行修改清单的application
元素:
android:name="android.support.multidex.MultiDexApplication"
否则按照Multidex configuration instructions。
中的说明从MultiDexApplication
扩展您的Application类
当Multidex配置正确且有效时,您会在logcat
中看到如下消息:
I/MultiDex: install
I/MultiDex: MultiDexExtractor.load(/data/app/com.qbix.multidextest-10.apk, false)
I/MultiDex: Detected that extraction must be performed.
I/MultiDex: install done
虽然你的应用程序的当前配置包含超过65K的方法引用,因此需要Multidex用于pre-Lollipop设备,你可能可以消除它。您对com.google.android.gms:play-services:10.0.1
的依赖性正在吸引所有Play服务API。它们在标题为有选择地将API编译到可执行文件的部分中为listed here。删除com.google.android.gms:play-services:10.0.1
并将其替换为您需要的特定API。这将改善您的构建时间,使您的APK更小,并且可以消除对Multidex的需求。
答案 1 :(得分:1)
似乎是' Multidex 64K方法' - 问题。该应用适用于Android API级别> = 21,但如果你的minSdkVersion是< 21,你应该遵循这些指示:
这是指向官方网页的链接: