如何检测用户何时将一个 wifi 连接切换到另一个 wifi?

How to detect when user turn one wifi connection to other wifi?

我的 WiFi 连接检测有问题。我的目标是检测用户何时在不同的 WiFi 之间切换。我找到了 this,但它只检测 WiFi 何时建立。就我而言,我需要知道一个 WiFi 网络何时在 phone.

上更改为另一个

您可以使用BroadcastReceiver

public class ConnectivityReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        ConnectivityManager conMan = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo netInfo = conMan.getActiveNetworkInfo();
        if(intent.getAction().equals(WifiManager.NETWORK_STATE_CHANGED_ACTION)) {
                if(netInfo.isConnected()) {
                    WifiManager wifiManager = (WifiManager) context.getAplicationContext().getSystemService (Context.WIFI_SERVICE);
                    WifiInfo info = wifiManager.getConnectionInfo ();
                    String ssid  = info.getSSID();
                    Log.d("Wifi Connected", "Wifi name is "+ info.getSSID());
                }
        }
    }
}