在软件开发中可以会用到mac地址作为,设备的唯一标示,我们也可以通过unity获取,经测试pc,ios都可以但是安卓没有获取到。代码如下
using UnityEngine;
using System.Collections;
using System.Net.NetworkInformation;
public class NetWorkInfo : MonoBehaviour
{
void Start()
{
Debug.Log(GetMacAddress());
}
public static string GetMacAddress()
{
string physicalAddress = "";
NetworkInterface[] nice = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface adaper in nice)
{
Debug.Log(adaper.Description);
if (adaper.Description == "en0")
{
physicalAddress = adaper.GetPhysicalAddress().ToString();
break;
}
else
{
physicalAddress = adaper.GetPhysicalAddress().ToString();
if (physicalAddress != "")
{
break;
};
}
}
return physicalAddress;
}
void OnGUI()
{
GUI.Label(new Rect(0, 0, 200, 100), "MAC=" + GetMacAddress());
}
}
补充说明
void Start () {
NetworkInterface[] nis = NetworkInterface.GetAllNetworkInterfaces();
foreach(NetworkInterface ni in nis )
{
Name = ni.Name;
Des = ni.Description;
Type = ni.NetworkInterfaceType.ToString();
Mac = ni.GetPhysicalAddress().ToString();
Debug.Log("Name ="+ni.Name);
Debug.Log("Des="+ni.Description);
Debug.Log("Type ="+ ni.NetworkInterfaceType.ToString());
Debug.Log("Mac="+ni.GetPhysicalAddress().ToString());
}
}