so Im at a dead end here.. I've tried to look at other posted problems/solutions and none have seemed to help me yet...
So I have built an Android app using Firebase. Till today, everything has been fine and I have been able to log users in.
All of a sudden (after some time working on the iOS and Web app), I come back to my Android app and find that its crashing on launch (and I am deducing its happening when it fetches my User's data)
I am getting the following stack trace, and I sadly cant make much sense of where the actual issue is..
Fatal Exception: com.google.firebase.database.d: Class com.myapp.android.c is missing a constructor with no arguments
at com.google.android.gms.internal.zzbqi$zza.zzjs(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzjs(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaz(Unknown Source)
at com.google.android.gms.internal.zzbqi.zza(Unknown Source)
at com.google.android.gms.internal.zzbqi.zza(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaw(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzjs(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzjs(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaz(Unknown Source)
at com.google.android.gms.internal.zzbqi.zza(Unknown Source)
at com.google.android.gms.internal.zzbqi.zza(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaw(Unknown Source)
at com.google.android.gms.internal.zzbqi.zza(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaw(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzjs(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzjs(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaz(Unknown Source)
at com.google.android.gms.internal.zzbqi.zza(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaw(Unknown Source)
at com.google.firebase.database.DataSnapshot.getValue(Unknown Source)
at com.myapp.android.FirebaseHelper$1.onDataChange(Unknown Source)
at com.google.firebase.database.Query$1.onDataChange(Unknown Source)
at com.google.android.gms.internal.zzbmz.zza(Unknown Source)
at com.google.android.gms.internal.zzbnz.zzYj(Unknown Source)
at com.google.android.gms.internal.zzboc$1.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:815)
at android.os.Handler.dispatchMessage(Handler.java:104)
at android.os.Looper.loop(Looper.java:207)
at android.app.ActivityThread.main(ActivityThread.java:5728)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:679)
The only clue I can take from all that is at com.google.firebase.database.DataSnapshot.getValue(Unknown Source), which makes me think its happening in my code at..
public void getUserData(final Boolean autoLogin, final Boolean fromGoogleSignIn) {
mDatabase = FirebaseDatabase.getInstance().getReference();
final DatabaseReference userRef = mDatabase.child("users").child(FirebaseAuth.getInstance().getCurrentUser().getUid());
ValueEventListener userListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot.getValue() == null) {
// Create User Data
} else {
sharedInstance().currentUser = dataSnapshot.getValue(User.class); // <-- Crashing here??
}
}
};
userRef.addListenerForSingleValueEvent(userListener);
}
The next biggest mystery is that this is ONLY happening in my release build.
I then added the debuggable true value to my release build, but when doing so the issue does NOT happen (it doesnt crash).
So theres something about my release build and when its not in debug mode which is causing this issue all of a sudden... and not sure why.
Regarding my User class, it is its own class in my project..
And this is my Proguard file...
-dontwarn com.squareup.okhttp.**
-keepattributes Signature
-keep class com.myapp.android.User { *; }
-keep class com.myapp.android.Vendor { *; }
-keep class com.myapp.android.Response { *; }
-keep class com.myapp.android.Voucher { *; }
-assumenosideeffects class android.util.Log {
public static *** d(...);
}
-dontpreverify
Any ideas? Thanks! :)

com.myapp.android.c, it seems you're not "keeping" some class in that package.