如何在Xamarin.Forms中获取连接移动数据的客户端设备的MAC地址?



在我的客户机-服务器解决方案中,我需要运行Xamarin的前端设备的MAC地址。表单应用程序。目前我只是得到Mac地址连接的Wifi是正确的信息有关设备。但是,我使用mobile data然后在设备中获得Mac地址不正确。

var lstAllNetWorkInfaces = NetworkInterface.GetAllNetworkInterfaces();
var ni = lstAllNetWorkInfaces.FirstOrDefault(intf => (intf.OperationalStatus == OperationalStatus.Up)
&& (intf.NetworkInterfaceType == NetworkInterfaceType.Wireless80211
|| intf.NetworkInterfaceType == NetworkInterfaceType.Ethernet));
var hw = ni.GetPhysicalAddress();
physicalWifiAddress = string.Join(":", (from ma in hw.GetAddressBytes() select ma.ToString("X2")).ToArray());

请让我知道是否有一个错误或如果你找到一个更好的解决方案。

">第二层(数据链路)-它在移动站(MS)和网络之间提供可靠的信令链路。协议基于ISDN的LAPDm">

来源:OSI模型是否也适用于移动网络?

所以在2G网络中没有使用ARP,所以MAC地址在这种情况下是不存在的。您应该考虑其他客户端身份验证方法。

我建议使用客户端证书,它们可以在任何设备上使用。

最新更新