如何获取已连接的Wifi网络的网络对象?

时间:2018-10-15 13:16:47

标签: android

我们可以通过以下方式获取有关当前Wifi网络的信息:

WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
WifiInfo connectionInfo = wifiManager.getConnectionInfo();

但是我没有明显的方法来获得与此WifiInfo相关的Network对象。

我们还可以遍历所有Network

ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);

for (Network network : connectivityManager.getAllNetworks()) {
    NetworkInfo networkInfo = connectivityManager.getNetworkInfo(network);
    String extraInfo = networkInfo.getExtraInfo();

    if (extraInfo.equals(connectionInfo.getSSID())) {
        return network;
    }
}

但是自Android 9.0起,即使我具有位置许可,extraInfo还是空白。

是否有一种安全的方法来获取与连接的wifi网络相关的当前Network

0 个答案:

没有答案