6 Yorum

Android: İnternet connection kontrolü

Eğer uygulamanız internet bağlantısı gerektiriyorsa, uygulama açıldığında da bunun kontrolünü yapsanız hiç fena olmaz. Çünkü kullanıcı (biliyorsunuz çok çeşitli) internet bağlantısı olmayıp, veriler çekilmediğinde programın hatalı olduğunu düşünebilir. Evet neyse şu şekilde yapılıyor :

private boolean checkInternetConnection() {
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
// test for connection
if (cm.getActiveNetworkInfo() != null
&& cm.getActiveNetworkInfo().isAvailable()
&& cm.getActiveNetworkInfo().isConnected()) {
return true;
}
else {
Log.v("Internet", "Internet Connection Not Present");
return false;
} }

Bu kodumuzu ister activity class’ına isterseniz dilediğiniz bir class’a koyuyorsunuz. Sonra onCreate methodunda çağırıyorsunuz.

if(checkInternetConnection) {
// do something -- burada toast ile bilgi verebilirsiniz veya farklı bir layout çağırabilirsiniz.
}

Unutmamak gerekiyor ki manifest dosyamıza da şunları ekliyoruz:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

muhtemelen ilkini siz de koymuşsunuzdur ama ikincisi genelde unutuluyor. Böylece interneti kontrol etmiş olduk.
Kolay gelsin..

6 comments on “Android: İnternet connection kontrolü

  1. Selamlar ben uzun süredir araştırdım ve bulamadığım bir konuda yardım isticem sizden. bahsettiğiniz internet kontorlünü şu şekilde yapmak istiyorum ama yabancı kaynaklar dahil aradığımı bulamadım. main layout da bir buton varsayın ve bu butona tıklandığında internet bağlantısı gerektiren başka bir layouta yönleniyor. butona tıklandığında ikinci layouta yönlenmeden internet bağlantısını kontrol etsin bağlantı varsa hemen yönlensin ama internet bağlantısı yoksa toast bir mesajla net bağlantısının olmadığı uyarısını verin main layoutta kalsın… bununla alakalı örnek bir kod kesinlikle birçok kişinin işine yarayacaktır.

  2. Selamlar.. Sorunuz ile ilgili örnek çalışmayı en kısa zamanda muhtemel cuma akşamına paylaşırım. Yarına finalim olduğundan dolayı bu akşam bakmam zor. Umarım çok acil değildir. Anlayışınız için teşekkürler.

  3. teşekkür ederim şimdiden çok acil değil finalde başarılar 🙂

  4. ben bahsettiğim şekilde internet kontrolünü hallettim ilgine çok teşekkür ederim. onayını almadan nasıl hallettiğimi paylaşmak istemedim blog senin ama arzu edersen okuyan arkadaşlara faydalı olması amacıyla paylaşabilirim

Yorum bırakın