先上效果图

实现其实很简单,就是WifiManager的各种调用,下面要说的是一些注意事项和踩到的坑
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
这些都是基本需要的权限,一般不会忘记,重要的是下一个:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
需要访问位置信息的权限一般都会忘记,毕竟网络和位置信息一般不会联想到一起去。很多人发现在使用getScanResult() 方法的时候获取到的列表是空的,很大一部分原因是位置权限没给,但是api 23以下又可以正常使用。很显然是因为6.0之后位置权限被列为危险权限,需要进行动态获取,这一步很容易就忘掉。
本文详细介绍了在Android应用中实现WiFi功能所需的基本权限,并特别强调了一个容易被忽略的权限——位置信息访问权限。对于API 23及以上的版本,此权限尤为重要,因为它影响着扫描结果的有效性。
5675





