2016-12-05 1 views
0

Okay, ich bin ziemlich neu in der Firebase-Entwicklung und versuche, Daten in die App-Datenbank einzufügen, die ich mit meinem Android Studio-Projekt verbunden habe. Allerdings erhalte ich diese Stack-Trace nach Klicken auf eine Schaltfläche, die den Text in der Datenbank ergänzt:Fehler beim Einfügen eines Datensatzes in die Firebase-Datenbank

E/AndroidRuntime: FATAL EXCEPTION: main 
         Process: com.xxx.xxxxx, PID: 13243 
         com.google.firebase.database.DatabaseException: Found conflicting getters for name: isChangingConfigurations 
          at com.google.android.gms.internal.zzbqi$zza.<init>(Unknown Source) 
          at com.google.android.gms.internal.zzbqi.zzi(Unknown Source) 
          at com.google.android.gms.internal.zzbqi.zzax(Unknown Source) 
          at com.google.android.gms.internal.zzbqi.zzaw(Unknown Source) 
          at com.google.firebase.database.DatabaseReference.zza(Unknown Source) 
          at com.google.firebase.database.DatabaseReference.setValue(Unknown Source) 
          at com.xxx.xxxxx.MainActivity$1.onClick(MainActivity.java:85) 
          at android.view.View.performClick(View.java:4780) 
          at android.view.View$PerformClick.run(View.java:19866) 
          at android.os.Handler.handleCallback(Handler.java:739) 
          at android.os.Handler.dispatchMessage(Handler.java:95) 
          at android.os.Looper.loop(Looper.java:135) 
          at android.app.ActivityThread.main(ActivityThread.java:5254) 
          at java.lang.reflect.Method.invoke(Native Method) 
          at java.lang.reflect.Method.invoke(Method.java:372) 
          at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 
          at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 

Und die MainActivity Codezeile, wenn platzt auf aka Linie 85 ist wie folgt:

mDatabase.child("users").child(mUserId).child("items").push().child("title").setValue(new ChatMessage(input.getText().toString(), mFirebaseAuth.getCurrentUser().getDisplayName())); 

Würde mich freuen, wenn jemand eine schöne und schnelle Lösung für dieses Problem finden kann. Google Firebase-Team kommt zur Rettung!

EDIT

Auf @ Frank Wunsch, das ist die Java-Klasse von ChatMessage, die ich in meinem setValue bin mit():

package com.xxx.xxxxx; 

import android.support.v7.app.AppCompatActivity; 
import com.google.firebase.database.IgnoreExtraProperties; 
import java.util.Date; 


/** 
* Created by sahir on 12/4/2016. 
*/ 
@IgnoreExtraProperties 
public class ChatMessage extends AppCompatActivity { 

    public String messageText; 
    public String messageUser; 
    public long messageTime; 

    public ChatMessage(){} 

    public ChatMessage(String messageText, String messageUser) { 
     this.messageText = messageText; 
     this.messageUser = messageUser; 

     // Initialize to current time 
     messageTime = new Date().getTime(); 
    } 

    public String getMessageText() { return messageText; } 
    public String getMessageUser() { return messageUser; } 
    public long getMessageTime() { return messageTime; } 


}//close ChatMessage 
+1

Ähnliche stacktrace wie [hier] gesehen (http://stackoverflow.com/q/40703001/4625829). Hast du es schon überprüft? –

+0

Ich denke, das ist das gleiche Problem wie @AL angegeben –

+0

Ich stimme zu, es ist das gleiche Problem, aber die Lösung funktioniert nicht für mich. – Sahir

Antwort

0

ich das Problem gefunden. Ich war töricht genug, den folgenden Import zu entfernen, nachdem ich die Java-Klasse (ChatMessage) erstellt hatte, unabhängig davon, ob ich wie eine Java-Aktivität handelte. Und jetzt kann ich meine Objekte problemlos an den setValue übergeben!

import android.support.v7.app.AppCompatActivity; 

Und ja auch diese entfernt werden muss:

extends AppCompatActivity 
Verwandte Themen