bu sorunu yaşadı mı? Firebase kodum sadece birkaç saat (tamamen işlevsel ve hepsi) için çalışıyor ve tekrar denediğimde artık çalışmıyor. Bunu arıyorum nasıl kod aşağıda verilmiştir:Firebase addValueEventListener sadece birkaç saat çalışan
ValueEventListener valueEventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Log.e(TAG, "onDataChange: Job found");
for (DataSnapshot jobSnapShot : dataSnapshot.getChildren()) {
Log.e(TAG, "onDataChange: Job +1");
Job job = jobSnapShot.getValue(Job.class);
// Add the ID into the job
job.setId(dataSnapshot.getKey());
// Set the job
arrayList.add(job);
subscriber.onNext(job);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
Log.e(TAG, "onCancelled: " + databaseError.getMessage());
}
};
Log.e(TAG, "call: id:" + userId + ", reference:" + FirebaseDatabase.getInstance().getReference().toString());
Log.e(TAG, "call: Calling Jobs...");
FirebaseDatabase.getInstance()
.getReference()
.child(context.getString(R.string.firebase_jobs))
.child(userId).
addValueEventListener(valueEventListener);
hatları:
Log.e(TAG, "call: id:" + userId + ", reference:" + FirebaseDatabase.getInstance().getReference().toString());
Log.e(TAG, "call: Calling Jobs...");
her seferinde yürütün. UserId ve getReference, doğru değerleri döndürür. Ancak addValueEventListener, birkaç saat sonra dinleyiciyi ekliyor gibi görünmüyor. Bunu düzeltmenin tek yolu, çıkış yapmak ve tekrar oturum açmaktır.
DÜZENLEME:
Benim auth devlet dinleyici kodu: firebaseAccount yılında
firebaseAccount = getFirebaseAccount();
firebaseAccount.getAuth().addAuthStateListener(firebaseAccount.getAuthListener());
: Bu sorun Firebase Auth kaynaklanır
public FirebaseAuth.AuthStateListener getAuthListener() {
return authStateListener;
}
FirebaseAuth.AuthStateListener authStateListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
FirebaseUser firebaseUser = firebaseAuth.getCurrentUser();
if (firebaseUser != null) {
String id = firebaseUser.getUid();
// User is signed in
Log.e(TAG, "onAuthStateChanged: Signed in as " + id);
// Start loginActivity when signed in
loginActivity.onLoginSuccess(id);
} else {
// User is not signed in
Log.e(TAG, "onAuthStateChanged: Signed out");
// User probably logged out. Finish the loginActivity and launch the login screen
}
}
};
Kimlik doğrulama kullanıyor musunuz? – Ymmanuel
Yup, kullanıcının oturum açtığını doğrulayabilirim ve oturum açmış kullanıcı kimliklerini geri alabiliyorum. – lawonga
Çok uzun bir mesaj alıyorum: background_crash V/GoogleSignatureVerifier: com.google.android.gms imza geçerli değil. Bulunan:. MIIEQzCCAyugAwIBAgIJAMLgh0ZkSjCNMA0GCSqGSIb3DQEBBAUAMHQxCzAJBgNVBAYTAlVTMRMw EQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtHb29n .... – lawonga