Uygulamanızın akışını internet kontrolü yaparak yönetmeniz gerekebilir.
Bunun için ilk olarak AndroidManifest.xml dosyasına receiver tanımı yapmalısınız.
<receiver android:name=".InternetConnectionReceiver">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
</receiver>
InternetConnectionReceiver
public class InternetConnectionReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (CheckConnection(context)) {
}
}
}
Yukarıda tanımlanmış olan receiver, cihazın ağ yapısında herhangi bir değişiklik olduğunda bunu yakalar. Örneğin wireless açıkken kapattığınız da veya kapalıyken açtığınız da bunu yakayabilirsiniz.
CheckConnection
public static boolean checkConnection(Context con) {
ConnectivityManager cm = (ConnectivityManager) con.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
return netInfo != null && netInfo.isConnectedOrConnecting();
}
Yukarıda ki kod bloğu da cihazın internete bağlı olması durumunu kontrol eder.