Android获取wifi MAC,关闭的wifi不能获取
Posted Boblim
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android获取wifi MAC,关闭的wifi不能获取相关的知识,希望对你有一定的参考价值。
最近一直在尝试着在android上通过ndk用C++获取本机MAC地址,但是用ioctl(SIOCGIFHWADDR)时,一直返回值小于0,即获取不到接口信息。刚开始我以为是自己漏掉了哪些访问权限,所以一直在增加uses-permission,后来发现不管怎么加都是这个情况,发现原来是用的android studio虚拟机没有打开wifi导致的。
因为WiFi的Mac address是一个被动资讯。一般在开机后,不会主动上报到系统裡。要待WiFi硬件启动后,才会把有关Mac address资料记载入系统去。所以要得到Mac address,一是等待WiFi启动,一是在程序中主动启动WiFi,得到Mac address后再把WiFi关掉。
(注:遍历了Android模拟器的接口之后,发现网卡名称只有eth0和lo(回环接口)两个,所以一般选择指定回去eth0)
以上是关于Android获取wifi MAC,关闭的wifi不能获取的主要内容,如果未能解决你的问题,请参考以下文章
android手机如何获取自己手机设置的wifi热点的bssid