2014-06-18 4 views
0

Comment démarrer un service quand Internet est activé? J'ai besoin de démarrer le service lorsque Internet est actif. J'ai une application qui communique avec l'application web quand internet est présent, même hors ligne le mobile a besoin d'une communication, il sera connu par le serveur au moment de l'arrivée de l'internet.Démarrer le service lorsque Internet est activé dans Android

Répondre

0

La réponse est dans votre question. Il suffit de créer un BroadcastReceiver pour écouter l'état du réseau, lorsque l'Internet est correct, démarrez le serveur comme d'habitude.

public class NetworkBroadcastReceiver extends BroadcastReceiver { 

    @Override 
    public void onReceive(Context context, Intent intent) { 
     String action = intent.getAction(); 
     if (ConnectivityManager.CONNECTIVITY_ACTION.equals(action)) { 
      ConnectivityManager mgr = (ConnectivityManager) 
       context.getSystemService(Context.CONNECTIVITY_SERVICE); 
      NetworkInfo networkInfo = mgr.getActiveNetworkInfo(); 
      if(networkInfo != null && networkInfo.isConnected()){ 
       isNetworkConnected = true; 
       //do your work here 
      } 
     } 
    }} 
Questions connexes