Vorrete
<intent-filter>
<action android:name="android.net.wifi.WIFI_STATE_CHANGED"/>
<action android:name="android.net.wifi.STATE_CHANGE"/>
</intent-filter>
nel tag ricevitore.
Oppure, se si desidera un maggiore controllo su di esso, prima di registrare BroadcastReceiver impostare questi in su:
final IntentFilter filters = new IntentFilter();
filters.addAction("android.net.wifi.WIFI_STATE_CHANGED");
filters.addAction("android.net.wifi.STATE_CHANGE");
super.registerReceiver(yourReceiver, filters);
WIFI_STATE_CHANGED
Broadcast azione intenti che indica che la connessione Wi-Fi è stato attivato, disattivato, permettendo, disabilitante o sconosciuto. Un extra fornisce questo stato come int. Un altro extra fornisce lo stato precedente, se disponibile.
STATE_CHANGE
Broadcast azione intenti che indica che lo stato di connettività Wi-Fi è cambiato. Un altro fornisce il nuovo stato sotto forma di un oggetto NetworkInfo. Se il nuovo stato è COLLEGATO, ulteriori extra possono fornire il BSSID e il WifiInfo del punto di accesso. come String
Inoltre, è necessario specificare le autorizzazioni di destra all'interno del tag "manifesto":
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
per verificare la connettività, è possibile utilizzare ConnectivityManager, come ci dice che tipo di connessione è disponibile.
ConnectivityManager conMngr = (ConnectivityManager)this.getSystemService(this.CONNECTIVITY_SERVICE);
android.net.NetworkInfo wifi = conMngr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
android.net.NetworkInfo mobile = conMngr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
possiamo anche aggiungere un ricevitore broadcast per controllare il collegamento dati? – tasomaniac
Potresti essere un po 'più preciso ... – nullpotent
Penso che questo ci dia solo le modifiche di connessione nell'adattatore WIFI. Voglio essere avvisato quando la connessione dati mobile è cambiata. – tasomaniac