AndroidManifest.xml添加权限
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
class ProxyInfo { public string IpAddress; public int Port; public Android.Net.Uri PacFileUrl; } /// <summary> /// 获取当前代理详情 /// </summary> /// <returns>未连接Wifi或者无代理信息返回null</returns> ProxyInfo GetWifiProxyInfo() { var wifi = (Android.Net.Wifi.WifiManager)GetSystemService(Context.WifiService); if (wifi == null) return null; if (!wifi.IsWifiEnabled) return null; var infos = wifi.ConfiguredNetworks; if (infos == null) return null; var cinfo = wifi.ConnectionInfo; if (cinfo == null) return null; var id = cinfo.NetworkId; Android.Net.Wifi.WifiConfiguration info = null; foreach (var item in infos) { if (item == null) continue; if (item.NetworkId == id) { info = item; break; } } if (info == null) return null; var proxy = info.HttpProxy; if (proxy == null) return null; return new ProxyInfo() { IpAddress = proxy.Host, Port = proxy.Port, PacFileUrl=proxy.PacFileUrl }; }
调用方式
var proxyInfo = GetWifiProxyInfo();
ProxyInfo
https://docs.microsoft.com/zh-cn/dotnet/api/android.net.proxyinfo?view=xamarin-android-sdk-9