Xamarin表单获取设备IP地址

问题描述 投票:0回答:2

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

xamarin.forms ip
2个回答
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";
}

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/

© www.soinside.com 2019 - 2024. All rights reserved.