Ich bin neu in der Firebase. Ich habe versucht, die Eigenschaften der Benutzer in meiner Anwendung in die Datenbank Firebase
aufgeführt zu sparen, ist dieser CodeFehler "java.lang.StackOverflowError:" beim Versuch, Objekt in Firebase-Datenbank zu speichern
mAuthListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
firebaseuser = firebaseAuth.getCurrentUser();
if (firebaseuser != null) {
finish();
firebaseuser = mAuth.getCurrentUser();
String nama = firebaseuser.getDisplayName();
String mail = firebaseuser.getEmail();
//String pass = password.getText().toString();
String id = firebaseuser.getUid();
//Uri gambar = firebaseuser.getPhotoUrl();
member1 = new Member(nama, mail, "", "belum", "belum", "belum", id);
datab.getReference("member").push().setValue(member1);
startActivity(new Intent(getApplicationContext(), HalamanUtama.class));
}
}
};
das Problem hier ist, wenn ich in meiner Anwendung erhalten in der Google unterzeichnen verwenden, kann ich das nicht retten Informationen des Benutzers, der sich in meiner Anwendung mit Google in meine Firebase-Datenbank angemeldet hat, aber ich kann die Anmeldeinformationen des Benutzers per E-Mail-Methode speichern. Diese ist der Code, um in meine Anwendung mit E-Mail
mAuth.createUserWithEmailAndPassword(email.getText().toString(), password.getText().toString())
.addOnCompleteListener(HalamanPendaftaran.this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
progressdialog.dismiss();
finish();
firebaseuser = mAuth.getCurrentUser();
String nama = firebaseuser.getDisplayName();
String mail = firebaseuser.getEmail();
String pass = password.getText().toString();
String id = firebaseuser.getUid();
Uri gambar = firebaseuser.getPhotoUrl();
member1 = new Member(nama, mail, pass, "belum", "belum", "belum", id, gambar);
datab.getReference("member").push().setValue(member1);
startActivity(new Intent(HalamanPendaftaran.this, HalamanUtama.class));
} else {
progressdialog.dismiss();
Toast.makeText(HalamanPendaftaran.this, "tidak dapat mendaftarkan user, tolong coba lagi !", Toast.LENGTH_SHORT).show();
email.setText("");
password.setText("");
}
}
});
Wie für die Fehler, die ich erhalten, wenn zum Speichern von Benutzerdaten versuchen, die sich mit der schreiben google
01-10 18:42:00.619 8218-8218/com.example.asus.fastapp E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.asus.fastapp, PID: 8218
java.lang.StackOverflowError: stack size 8MB
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE
Dies ist eines der Daten der Benutzer, der erfolgreich gespeichert Firebase Database data
jede Hilfe sehr
geschätzt würde
Ich konnte keine Fehler finden, aber ich fragte mich, warum Sie 'finish()' so früh anrufen? – hotrod
em wird es verwendet, um zwischen Aktivitäten zu wechseln. Das Problem liegt im Code "datab.getReference (" member "). push(). setValue (member1);" –
Ich weiß, wofür es ist, aber ich habe mich nur gefragt, warum du es so früh im Code nennst anstatt später. Ich denke, du solltest nicht so früh "Finish()" nennen. Versuchen Sie, es aufzurufen, nachdem Sie die neue Aktivität tatsächlich gestartet haben. – hotrod