介绍
可以扫描附近所有的Wi-Fi信息并展示出来给用户,并且点击对应Wi-Fi的SSID时可以在dialog弹窗中展示对应Wi-Fi的详细信息。 6G Wi-Fi没有条件测试,所以当前未完成。
页面展示
初始的页面,可以点击对应按钮选择页面中显示2.4G还是5G的Wi-Fi信息:
点击Wi-Fi的SSID,可以显示点击处周围一块区域对应Wi-Fi的详细信息:
使用的技术
ViewBinding: 代替findViewById的作用。
WifiManager:获取附近Wi-Fi信息。
Canvas:自定义控件中进行绘图的操作。
Scroller:进行页面中坐标系的滚动。
前置配置
在AndroidManifest.xml中进行权限配置:
<!-- 通过GPS芯片接收卫星的定位信息 -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!-- 通过WiFi或移动基站的方式获取设备大致的经纬度信息 -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!-- 获取WiFi等WLAN无限网络信息的权限,允许访问WifiManager -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
为了在项目中使用ViewBinding,在对应模块中build文件中进行设置:
android {
buildFeatures {
viewBinding true
}
}
项目地址
链接: WiFiChannelMap
注:APP中还有很多需要修复的地方,如果有好的建议可以提供。