Я пытаюсь создать кнопку «Мне нравится», которая работает следующим образом: когда пользователь нажимает кнопку «Мне нравится», я использую идентификатор пользователя, чтобы добавить значение «Мне нравится» в моей базе данных в реальном времени.В моем проекте также используется Firestore, и я хочу использовать эти данные для создания пути к новому «подобию» в базе данных реального времени.
Вот как я получаю свой идентификатор документа из Firestore для последующего построения пути к базе данных реального времени..
private FirebaseAuth mAuth;
FirebaseUser currentUser;
private FirebaseFirestore db = FirebaseFirestore.getInstance();
FirebaseDatabase database = FirebaseDatabase.getInstance();
private DatabaseReference LikesRef;
int CountLike;
private String currentUserI;
Boolean cheker = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_anu_detals);
mAuth = FirebaseAuth.getInstance();
currentUserI = mAuth.getCurrentUser().getUid();
final String PostKey = db.collection("Anu").document().getId();
LikesRef = FirebaseDatabase. getInstance().getReference().child("Like");
Вот кнопка для добавления лайка.Если человек нажмет еще раз, я удалю currentuser
из базы данных и буду считать «неприязнь».
bt_like.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
cheker = true;
LikesRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if (cheker.equals(true)) {
if (dataSnapshot.child(PostKey).hasChild(currentUserI)) {
LikesRef.child(PostKey).child(currentUserI).removeValue();
likecheker = false;
}
else
{
LikesRef.child(PostKey).child(currentUserI).setValue(true);
cheker = false;
}
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
});
Я не получаю никаких ошибок, но данные (идентификатор документа и currentuser)) не собирается в базу данных в реальном времени.Как получить ссылку / идентификатор из Firestore для использования в базе данных реального времени?
Данные в базе данных реального времени
Данные в Firestore