public AndroidIPGlobalStatistics(bool ipv4) { AndroidNetworkInterface[] networkInterfaces = NetworkInterfacePal.GetAndroidNetworkInterfaces(); foreach (var networkInterface in networkInterfaces) { var component = ipv4 ? NetworkInterfaceComponent.IPv4 : NetworkInterfaceComponent.IPv6; if (networkInterface.Supports(component)) { NumberOfInterfaces++; } foreach (UnixUnicastIPAddressInformation addressInformation in networkInterface.UnicastAddress) { bool isIPv4 = addressInformation.Address.AddressFamily == AddressFamily.InterNetwork; if (isIPv4 == ipv4) { NumberOfIPAddresses++; } } if (networkInterface.MulticastAddresess != null) { foreach (IPAddress address in networkInterface.MulticastAddresess) { bool isIPv4 = address.AddressFamily == AddressFamily.InterNetwork; if (isIPv4 == ipv4) { NumberOfIPAddresses++; } } } } }
public static bool GetIsNetworkAvailable() { return(NetworkInterfacePal.GetIsNetworkAvailable()); }
public static NetworkInterface[] GetAllNetworkInterfaces() { return(NetworkInterfacePal.GetAllNetworkInterfaces()); }