最近有发现公司很多设备采集的mac地址都有空或则000000002,000000000等这种地址,明显不是正常的mac地址,特意去调研了一下相关原因, 目前获取设备mac地址的相关方案有两种,一种C语言类型,一种OC语言类型。具体如下:
方案一
代码类型:C语言
逻辑:通过遍历网络接口列表获取获取mac地址指针从而获取地址,取返回数组列表首个。
缺点:所用方法已被iOS系统屏蔽,获取到的均为不准确和重复地址。
关键方法:
getifaddrs
LLADDR
返回示例:
Interface: lo0
MAC Address: 00:00:00:00:00:00
Interface: XHC0
MAC Address: 00:00:00:00:00:00
Interface: pdp_ip0
MAC Address: 00:00:00:00:00:00
Interface: pdp_ip5
MAC Address: 00:00:00:00:00:FF
Interface: pdp_ip1
MAC Address: 00:00:00:00:00:FF
Interface: pdp_ip2
MAC Address: 00:00:00:00:00:FF
Interface: pdp_ip4
MAC Address: 00:00:00:00:00:FF
Interface: pdp_ip3
MAC Address: 00:00:00:00:00:01
Interface: anpi0
MAC Address: