Xamarin表格获取设备IP地址

时间:2019-03-23 11:18:00

标签: xamarin.forms ip

我正在使用Xamarin.Forms跨平台应用程序。现在,我需要获取设备主目录Ip(我的意思是静态地址)。在Xamarin.Forms中获取设备的IPv4地址的最简单方法是什么?

2 个答案:

答案 0 :(得分:0)

您可以使用Dns.GetHostAddresses下的using System.Net

调用此功能

var ip = GetLocalAddress();

GetLocalAddress:

private string GetLocalAddress()
{
    var IpAddress = Dns.GetHostAddresses(Dns.GetHostName()).FirstOrDefault();

    if (IpAddress != null)
        return IpAddress.ToString();

    return "Could not locate IP Address";
}

答案 1 :(得分:0)

您可以使用DependencyService获取IP地址,然后以下代码为Android项目。对于其他平台,您可以看一下:

class IPAddressManager : IIPAddressManager
{
    public string GetIPAddress()
    {
        IPAddress[] adresses = Dns.GetHostAddresses(Dns.GetHostName());

        if (adresses !=null && adresses[0] != null)
        {
            return adresses[0].ToString();
        }
        else
        {
            return null;
        }
    }
}

https://theconfuzedsourcecode.wordpress.com/2015/05/16/how-to-easily-get-device-ip-address-in-xamarin-forms-using-dependencyservice/