DatabaseException: zwei Getter oder Felder mit widersprüchlichen groß-und Kleinschreibung

Jedes mal, wenn ich versuchen, abrufen von Daten aus meiner Datenbank, ich bekomme

com.google.firebase.database.DatabaseException: Found two getters or fields with conflicting case sensitivity for property: n

jedes meiner Felder, die einen einzelnen Buchstaben. Googeln dieses Problem gibt 0 Ergebnisse und ich finde keinen Fall Unstimmigkeiten in meinem code. Ich weiß nicht, ob das ein bug in der FB oder wenn ich etwas besonderes tun, für alle Felder, die mit Namen, 1 Zeichen lang sein.

Hier ist der rest von dem Fehler berichten, wenn es einen Unterschied macht (die Zeile von meinem code, auf den es verweist, ist eine einfache

params = dataSnapshot.getValue(Parameters.class);

die funktioniert überall sonst:

E/AndroidRuntime: FATAL EXCEPTION: main
Process: osu.gd_prototype, PID: 11345
com.google.firebase.database.DatabaseException: Found two getters or fields with conflicting case sensitivity for property: n
at com.google.android.gms.internal.zzaix$zza.zziw(Unknown Source)
at com.google.android.gms.internal.zzaix$zza.<init>(Unknown Source)
at com.google.android.gms.internal.zzaix.zzj(Unknown Source)
at com.google.android.gms.internal.zzaix.zzd(Unknown Source)
at com.google.android.gms.internal.zzaix.zzb(Unknown Source)
at com.google.android.gms.internal.zzaix.zza(Unknown Source)
at com.google.firebase.database.DataSnapshot.getValue(Unknown Source)
at osu.gd_prototype.DataSend$1.onDataChange(DataSend.java:107)
at com.google.android.gms.internal.zzafp.zza(Unknown Source)
at com.google.android.gms.internal.zzagp.zzSu(Unknown Source)
at com.google.android.gms.internal.zzags$1.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5001)
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)

Hier ist der code für Parameter mit den entsprechenden problematischen Getter und setter der Felder, die werfen die Fehlermeldung:

public class Parameters {

    public int K;
    public double L;
    public int D;
    public int N;

    public Parameters() {

}

    public double getL(){
        return L;
    }
    public void setL(double lVal){
        L = lVal;
    }

    public int getK(){
        return K;
    }
    public void setK(int kVal){
        K = kVal;
    }

    public int getD(){
        return D;
    }
    public void setD(int dVal){
        D = dVal;
    }

    public int getN(){
        return N;
    }
    public void setN(int nVal){
        N = nVal;
    }
}
  • Zeigen die minimalen code für Parameters dass das problem reproduziert bitte.
  • Ich denke, das sollte geben Sie Sie alle info
  • Ah... kann man das Feld nicht öffentlichen? E. g. protected int N; Oder lassen Sie es öffentlich, aber entfernen Sie die getN() und setN() Methoden.
  • Einstellung alle Felder auf den privaten scheint es behoben, aber ich bin mir nicht ganz sicher, warum.
  • Ich Schreibe es in eine Antwort.
  • Sind Sie sich dieser Fehler im release-build mit proguard auf??

InformationsquelleAutor user6462035 | 2016-06-14
Schreibe einen Kommentar