https://www.cnblogs.com/crazytomato/p/8311733.html
在软件开发中可以会用到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());
}
}
补充说明:
using UnityEngine;
using System.Collections;
using System.Net.NetworkInformation;
public class Test : MonoBehaviour {
void Start() {
NetworkInterface[] nis = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface ni in nis) {
Debug.Log ("Name = " + ni.Name);
Debug.Log ("Des = " + ni.Description);
Debug.Log ("Type = " + ni.NetworkInterfaceType.ToString() );
Debug.Log ("Mac地址 = " + ni.GetPhysicalAddress().ToString() );
Debug.Log ("------------------------------------------------");
}
}
}