Xamarin.forms 如何使用xamarin表单在android 9中获取活动Wifi网络运营商名称

Xamarin.forms 如何使用xamarin表单在android 9中获取活动Wifi网络运营商名称,xamarin.forms,Xamarin.forms,我需要wifi连接的设备名称。以下代码在Android 8.0上正常工作。但在Android 9.0上它返回空值 var connectivityManager = (ConnectivityManager)Android.App.Application.Context.GetSystemService(Context.ConnectivityService); var activeNetworkInfo = connectivityManager.ActiveNetworkInfo.Extra

我需要wifi连接的设备名称。以下代码在Android 8.0上正常工作。但在Android 9.0上它返回空值

var connectivityManager = (ConnectivityManager)Android.App.Application.Context.GetSystemService(Context.ConnectivityService);
var activeNetworkInfo = connectivityManager.ActiveNetworkInfo.ExtraInfo;
有谁能给我答案吗

在Android 9中,应用程序执行Wi-Fi扫描的权限要求比以前的版本更严格。 因此,首先,确保已请求所需的权限

然后,您可以尝试获取SSID

 var connectivityManager = (ConnectivityManager)Android.App.Application.Context.GetSystemService(Context.ConnectivityService);
        NetworkInfo networkInfo = connectivityManager.GetNetworkInfo(ConnectivityType.Wifi);
        if (networkInfo.IsConnected)
        {
            WifiManager wifiManager = (WifiManager)Android.App.Application.Context.GetSystemService(Context.WifiService);
            WifiInfo wifiInfo = wifiManager.ConnectionInfo;
            string name = networkInfo.ExtraInfo;
            string ssid = "\"" + wifiInfo.SSID + "\"";
        }
在Android 9中,应用程序执行Wi-Fi扫描的权限要求比以前的版本更严格。 因此,首先,确保已请求所需的权限

然后,您可以尝试获取SSID

 var connectivityManager = (ConnectivityManager)Android.App.Application.Context.GetSystemService(Context.ConnectivityService);
        NetworkInfo networkInfo = connectivityManager.GetNetworkInfo(ConnectivityType.Wifi);
        if (networkInfo.IsConnected)
        {
            WifiManager wifiManager = (WifiManager)Android.App.Application.Context.GetSystemService(Context.WifiService);
            WifiInfo wifiInfo = wifiManager.ConnectionInfo;
            string name = networkInfo.ExtraInfo;
            string ssid = "\"" + wifiInfo.SSID + "\"";
        }

是的,它起作用了。谢谢你的帮助,利奥。是的,它正在工作。谢谢你的帮助,利奥。