Umarım bir faydamız olur diyerek çözüm yolumu sizinle paylaşayım..
Volley kütüphanesinin cachesi var. Bu her seferinde kaldığı sürece listeniz, yani çekilen verileriniz güncellenmiyor. Onun için kütüphanede şöyle bir kod var.
requestQueue.getCache().clear();
Bu kodu volley kuyruğunu bitirirken kullanıyoruz. Hatta cacheyi tamamende kapatabilirsiniz. Ama bu çok mantıklı değil. Çünkü internetiniz yoksa bu defa hiçbir veri yüklenmeyecektir.
Bu durumda, internetiniz varsa ve yoksa diye kontrol yapıyoruz. Buna göre de ya cacheyi temziliyoruz, ya da temizlemiyoruz. Aşağıdaki kontrolü yapıp, volley kuyruğunda çağıracağız.
public boolean networkConnection() { //BAĞLANTIYI KONTROL ETMEK
ConnectivityManager conMgr = (ConnectivityManager) getSystemService (this.CONNECTIVITY_SERVICE);
if (conMgr.getActiveNetworkInfo() != null && conMgr.getActiveNetworkInfo().isAvailable() && conMgr.getActiveNetworkInfo().isConnected()) {
return true;
}else{
return false;
}
}
yani şöyle olacak :
Volley.newRequestQueue(gazeteYazilari2.this).add(stringRequest); // internet yoksa zaten normal kuyruk
if(networkConnection()){ //internet varsa cacheyi temizle ve çağır
RequestQueue requestQueue = Volley.newRequestQueue(gazeteYazilari2.this);
requestQueue.getCache().clear();
requestQueue.add(stringRequest);
}else{ // internet yoksa birşey yapma..
}
Hiçbir Türkçe kaynakta deva bulamamıştım derdime. Artık arayan bulabilecek. :)