android-ibc-forum

Unnamed repository; edit this file 'description' to name the repository.
git clone http://git.code.weiherhei.de/android-ibc-forum.git
Log | Files | Refs

NetworkStateReceiver.java (1416B)


      1 package de.mtbnews.android.receiver;
      2 
      3 import android.content.BroadcastReceiver;
      4 import android.content.Context;
      5 import android.content.Intent;
      6 import android.net.ConnectivityManager;
      7 import android.util.Log;
      8 import de.mtbnews.android.service.SubscriptionService;
      9 
     10 /**
     11  * Ein Receiver für die Erkennung von Änderungen am Verbindungsstatus. Wenn die
     12  * Datenverbindung unterbrochen oder wieder hergestellt wird, wird dieser
     13  * Receiver informiert.
     14  * <ul>
     15  * <li>Wird die Datenverbindung unterbrochen, wird der Hintergrundservice
     16  * gestoppt.</li>
     17  * <li>Wird die Datenverbindung hergestellt, wird der Hintergrundservice
     18  * gestartet.</li>
     19  * </ul>
     20  * 
     21  * @author dankert
     22  * 
     23  */
     24 public class NetworkStateReceiver extends BroadcastReceiver
     25 {
     26 
     27 	/**
     28 	 * {@inheritDoc}
     29 	 * 
     30 	 * @see android.content.BroadcastReceiver#onReceive(android.content.Context,
     31 	 *      android.content.Intent)
     32 	 */
     33 	@Override
     34 	public void onReceive(Context context, Intent intent)
     35 	{
     36 		// Feststellen, ob die Verbindung besteht.
     37 		final boolean connectionAvailable = !intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
     38 
     39 		if (connectionAvailable)
     40 		{
     41 			// Datenverbindung vorhanden
     42 			Log.d("IBC", "Connection established, (re-)starting service");
     43 			context.startService(new Intent(context, SubscriptionService.class));
     44 		}
     45 		else
     46 		{
     47 			// Service wird nicht beendet, sondern der Timer soll weiterlaufen.
     48 			;
     49 		}
     50 	}
     51 }