Вам необходимо создать один широковещательный регистр для того, который будет запускать широковещательный намерение, если он обнаружит какие-либо изменения в состоянии Wi-Fi.
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
создать одну локальную широковещательную передачу, которая прослушивает это обновление.например,
BroadcastReceiver WifiChangeReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
final String action = intent.getAction();
if (action != null && action.equals(WifiManager.NETWORK_STATE_CHANGED_ACTION)) {
NetworkInfo networkInfo = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
Log.d(AppConstants.TAG, "onReceive: \"wifi connected:\" " + networkInfo.isConnected());
if (networkInfo.isConnected()) {
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
if (wifiInfo.getSSID().contains("your desired SSID")/*("Android")*/) {
isAllowed = true;
Log.d(AppConstants.TAG, "==============================onReceive: " + isAllowed);
Log.d(AppConstants.TAG, "onReceive:connected to wifi " + wifiInfo.getSSID());
} else {
Log.d(AppConstants.TAG, "onReceive:connected to wifi " + wifiInfo.getSSID());
isAllowed = false;
}
}
}
}
};
, если вы подключили Wi-Fi, это означает, что вы передали правильные учетные данные, в противном случае это неверно