Я пытаюсь отправить свои контакты в firebase по одному и проверять, присутствует ли пользователь или нет, но из-за асинхронного поведения firebase некоторая информация отображается дважды.
Я хочу синхронизировать этот метод следующим образомэто:
цикл отправляет одно число в firebase, отвечает в firebase, сохраняет и продолжает
for (int i=0 ; i< list.size();i++) {
Check_Contact(list.get(i));
}
public void Check_Contact(String number)
{
DatabaseReference myRef = database.getReference("user").child(number);
myRef.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if (dataSnapshot.getValue() == null) {
}
else {
UserProfile row = dataSnapshot.getValue(UserProfile.class);
ls.add(row);
Adapter.notifyDataSetChanged();
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
Может кто-нибудь сказать мне, как синхронизировать этот метод?
Структура базы огня
выходной сигнал