Blackhope adlı üyeden alıntı: mesajı görüntüle
Hocam tam hatırlamıyorum ama runnable gibi kod kalıbı vardı isterseniz bi araştırın.
KProgramlama adlı üyeden alıntı: mesajı görüntüle
Merhaba, şöyle bir kod hazırladım. Kendim de firebase döngülerimde kullanıyorum ve gayet sağlıklı çalışıyor. Parantez hatası olabilir kontrol edersiniz.

private int santiagoRetries,updateRetries;
private DatabaseReference mDatabase;
        try {
            mDatabase.child("/firebase/mydatabase").addListenerForSingleValueEvent(new ValueEventListener() {
                @Override
                public void onDataChange(@NonNull DataSnapshot snapshot) {
                    if (snapshot.exists()) {
                        Integer firebasedatasi = snapshot.getValue(Integer.class);
                        new Handler().postDelayed(new Runnable() {
                            @Override
                            public void run() {
                                // Calistirilacak kod
                            }
                        }, 500);
                    } else {
                        if (updateRetries > 3) {
                            //finish();
                        } else {
                            updateRetries++;
                            updatecontrol();
                        }
                    }

                }

                @Override
                public void onCancelled(@NonNull DatabaseError error) {
                    if (updateRetries > 3) {
                        //finish();
                    } else {
                        updateRetries++;
                        updatecontrol();
                    }
                }
            });
        } catch (RuntimeExecutionException e) {
            Log.e("MainActivity", e.getMessage(), e);
        }
çok teşekkür ederim