Sanket Berde Sanket Berde - 1 month ago 5
Android Question

java.lang.NoClassDefFoundError: com.google.firebase.FirebaseOptions

I was getting this weird error on my google developer console. So i used google Cloud Test Lab to See whats really happening. turns out my app is failing on almost all devices

FATAL EXCEPTION: main
Process: com.blackcurrantapps.iamin, PID: 16706
java.lang.NoClassDefFoundError: com.google.firebase.FirebaseOptions
at com.google.firebase.FirebaseApp.zzbu(Unknown Source)
at com.google.firebase.provider.FirebaseInitProvider.onCreate(Unknown Source)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1591)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1562)
at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source)
at android.app.ActivityThread.installProvider(ActivityThread.java:4871)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4466)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4406)
at android.app.ActivityThread.access$1500(ActivityThread.java:139)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1270)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5102)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
at dalvik.system.NativeStart.main(Native Method)


Here is a screenshot of the Test.
enter image description here

Now Here's the funny part, I dont even use Firebase in my app at all. There is no reference to the word "Firebase" when i do a find in path on my entire application. I Do use google cloud services, login and Google app engine though.

Here's my build.gradle file:

buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}

dependencies {
classpath 'io.fabric.tools:gradle:1.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
apply plugin: 'com.google.gms.google-services'

android {
compileSdkVersion 23
buildToolsVersion '23.0.2'

defaultConfig {
applicationId "com.blackcurrantapps.iamin"
minSdkVersion 16
targetSdkVersion 23
versionCode 11
versionName "Fixed Check in Bug"
multiDexEnabled = true
}
buildTypes {
release {
shrinkResources true
// minifyEnabled true
// proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
packagingOptions {
exclude 'META-INF/LICENSE'
exclude 'META-INF/NOTICE'
}
dexOptions {
javaMaxHeapSize "4g"
}
}
repositories {
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
maven { url "https://oss.sonatype.org/content/groups/public/" }
maven { url "https://jitpack.io" }
maven { url 'https://maven.fabric.io/public' }
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])

compile('com.mikepenz:materialdrawer:4.5.8@aar') {
transitive = true
}

compile 'com.mikepenz:google-material-typeface:1.2.0.1@aar' //Google Material Design Icons
compile 'com.mikepenz:fontawesome-typeface:4.4.0.1@aar'

compile('com.vincentbrison.openlibraries.android:dualcache:2.2.2@jar') {
transitive = true;
}

compile project(':htmlDialog')
compile('com.twitter.sdk.android:twitter:1.8.0@aar') {
transitive = true;
}
compile 'com.android.support:palette-v7:23.4.0'
compile 'com.android.support:multidex:1.0.1'
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.google.android.gms:play-services-maps:9.0.0'
compile 'com.google.android.gms:play-services-gcm:9.0.0'
compile 'com.google.android.gms:play-services-identity:9.0.0'
compile 'com.google.android.gms:play-services-base:9.0.0'
compile 'com.google.android.gms:play-services-plus:9.0.0'
compile 'com.google.android.gms:play-services-analytics:9.0.0'
compile 'com.google.android.gms:play-services-location:9.0.0'
compile 'com.android.support:cardview-v7:23.4.0'
compile 'com.rengwuxian.materialedittext:library:2.1.3'
compile 'com.twotoasters.jazzylistview:library:1.2.1'
compile 'com.twotoasters.jazzylistview:library-recyclerview:1.2.1'
compile 'com.pnikosis:materialish-progress:1.7'
compile 'com.getbase:floatingactionbutton:1.10.1'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.squareup.okhttp:okhttp:2.6.0'
compile 'me.dm7.barcodescanner:zbar:1.8.3'
compile 'net.glxn.qrgen:android:2.0'
compile 'com.edmodo:cropper:1.0.1'
compile 'com.github.PhilJay:MPAndroidChart:v2.1.6'
compile 'de.greenrobot:eventbus:2.4.0'
compile 'com.android.support:support-v4:23.4.0'
compile 'com.pavelsikun:material-seekbar-preference:0.12.1+'

compile project(path: ':backend', configuration: 'android-endpoints')
}


Can anyone help me out here ?

Answer

Thanks for posting the question Sanket. I'm the PM on Firebase Test Lab (formerly Cloud Test Lab). Wanted to let you know that this is a bug on our end that should now be fixed.

It seems that your app is currently using the latest and greatest Google Play Services. We updated our devices to use them last week then we discovered a bug that had us revert to an older version. Right now, we re-deployed the latest Play services on our devices so rerunning your tests should work. If not, please let me know and we'll look into it and fix it.

Comments