在軟件開發中可以會用到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 ("------------------------------------------------"); } } }