Je suis nouveau à Firebase. J'essaye d'enregistrer POJO qui a envoyé d'Android à la base de données en temps réel.com.google.firebase.database.DatabaseException: Les caractères ne sont pas pris en charge, s'il vous plaît chaînes
J'ai un POJO comme ceci:
@IgnoreExtraProperties
public class Member implements Parcelable{
public String name;
public Member() {}
public Member(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
/**=================== */
/** Parcelable section */
/**=================== */
public static final Parcelable.Creator CREATOR = new Parcelable.Creator() {
public Member createFromParcel(Parcel in) {
return new Member(in);
}
public Member[] newArray(int size) {
return new Member[size];
}
};
public Member(Parcel in){
this.name = in.readString();
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(this.name);
}
}
Et activité comme ceci:
package com.example.view;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.example.R;
import com.example.model.Member;
public class TestActivity extends AppCompatActivity {
DatabaseReference myRef;
Button button;
TextView text;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
FirebaseDatabase.getInstance().setPersistenceEnabled(true);
myRef = FirebaseDatabase.getInstance().getReference();
text = (TextView) findViewById(R.id.text_test);
button = (Button) findViewById(R.id.button_test);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
sendDataToFirebase();
}
});
}
private void sendDataToFirebase() {
String key = myRef.push().getKey();
Member member = new Member("John");
myRef.child("Member").child("john").child(key).setValue(member);
}
}
apparaissent alors cette erreur après avoir cliqué sur le bouton:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example, PID: 16332
com.google.firebase.database.DatabaseException: Characters are not supported, please strings
at com.google.android.gms.internal.zg.zzao(Unknown Source)
at com.google.android.gms.internal.zg.zzar(Unknown Source)
at com.google.android.gms.internal.zh.zzas(Unknown Source)
at com.google.android.gms.internal.zg.zzao(Unknown Source)
at com.google.android.gms.internal.zg.zzan(Unknown Source)
at com.google.firebase.database.DatabaseReference.zza(Unknown Source)
at com.google.firebase.database.DatabaseReference.setValue(Unknown Source)
at com.example.view.TestActivity.sendDataToFirebase(TestActivity.java:43)
at com.example.view.TestActivity.access$000(TestActivity.java:15)
at com.example.view.TestActivity$1.onClick(TestActivity.java:35)
at android.view.View.performClick(View.java:5714)
at android.widget.TextView.performClick(TextView.java:10926)
at android.view.View$PerformClick.run(View.java:22594)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7325)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
je peux » t découvrir ce qui ne va pas avec mon code. J'ai suivi le tutoriel de Firebase official website et d'autres tutoriel. Je les ai suivis avec soin et j'ai essayé plusieurs fois. J'ai googling pendant des heures, mais aucun espoir. Hope recevra des solutions ou des conseils de la part de cette communauté. Un grand merci :)
'TestActivity.java: 56' ... Qu'est-ce à cette ligne? –
Désolé mon mauvais, j'ai affiché le mauvais code d'erreur. Je l'ai édité. @ cricket_007 – Victor
Encore une fois, ce qui est à cette ligne? –