2012-08-28 3 views
0

J'ai ce BroadcastReceiver pour écouter les changements dans l'état WiFi:BroadcastReceiver pour les données mobiles

private BroadcastReceiver mWifiStateChangedReceiver = new BroadcastReceiver() { 

    @Override 
    public void onReceive(Context context, Intent intent) { 

     int extraWifiState = intent.getIntExtra(
       WifiManager.EXTRA_WIFI_STATE, 
       WifiManager.WIFI_STATE_UNKNOWN 
       ); 

     wifiState = new WifiState(Main.this); 

     switch (extraWifiState) { 

     case WifiManager.WIFI_STATE_DISABLED: 
      wifiState.haveNetworkConnection(); 
      break; 

     case WifiManager.WIFI_STATE_ENABLED: 

      ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 
      while (conMan.getActiveNetworkInfo() == null 
        || conMan.getActiveNetworkInfo().getState() != NetworkInfo.State.CONNECTED) { 

       wifiState.cancelDialog(); 

      } 
      break; 
     case WifiManager.WIFI_STATE_ENABLING: 
      break; 
     case WifiManager.WIFI_STATE_UNKNOWN: 
      break; 
     } 
    } 
}; 

Comment puis-je ajouter le support pour écouter des données mobiles dans ce BroadcastReceiver, aswell?

Merci d'avance, les gars!

Répondre

2

Vous pouvez écouter "android.intent.action.ANY_DATA_STATE" et vous serez informé lorsque l'état de la connectivité des données change (données mobiles et/ou wifi).