Unity 获取手机IP地址
IP地址分为IPV4和IPV6,一般说IP地址指的是IPV4的地址。
运行日志:
代码如下:
using System;
using UnityEngine;
using System.Net;
using System.Net.Sockets;
public class GetIPAddressTools : MonoBehaviour
{
void Start()
{
Debug.LogError("GetLocalIPv4:" + GetLocalIPv4());
Debug.LogError("GetLocalIPv6:" + GetLocalIPv6());
}
// IPV4
public static string GetLocalIPv4()
{
string ipAddress = "";
try
{
IPHostEntry host = Dns.GetHostEntry(Dns.GetHostName());
foreach (IPAddress ip in host.AddressList)
{
if (ip.AddressFamily == AddressFamily.InterNetwork)
{
ipAddress = ip.ToString();
break;
}
}
}
catch (Exception e)
{
Debug.LogError("IP 获取失败");
}
return ipAddress;
}
// IPV6
public static string GetLocalIPv6()
{
string ipAddress = "";
try
{
IPHostEntry host = Dns.GetHostEntry(Dns.GetHostName());
foreach (IPAddress ip in host.AddressList)
{
if (ip.AddressFamily == AddressFamily.InterNetworkV6)
{
ipAddress = ip.ToString();
break;
}
}
}
catch (Exception e)
{
Debug.LogError("IP 获取失败");
}
return ipAddress;
}
}