• 11-02-2022, 14:38:49
    #1
    Kurumsal PLUS
    merhaba do while döngüsü ile aşşagıdaki kodları yazdım ama daha önceden firebase ile çektigim verileri bu döngüyü kurunca yansıtmıyor bunun yerine hangi döngüyü kurabilirim yada ne hata sebebi ne olabilir handlerin çalışması lazım herhangi bir butona basmadan o yüzden bunu yaptım
  • 11-02-2022, 14:41:50
    #2
    Hocam tam hatırlamıyorum ama runnable gibi kod kalıbı vardı isterseniz bi araştırın.
  • 11-02-2022, 16:20:19
    #3
    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);
            }
  • 12-02-2022, 21:41:30
    #4
    Kurumsal PLUS
    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