主题的流程
1.获取到wifi的管理器
WifiManger mwifimanager = (WifiManger)context.getSystemService(WIFI_SERVICE);
2.通过管理器可以开启/关闭WIFI
mwifimanager.setWifiEnabled(
true
); true-->开启 false-->关闭
3.通过管理器获取wifi状态
mwifimanager.getWifiState(); 返回值是一个int类型,0-->正在关闭; 1-->不可用状态;2-->正在打开 ;3-->可用状态;4-->不可知状态
4.搜索周边wifi
开启搜索:mwifimanager.startScan();
获得搜索结果:mwifimanager.getScanResults(); 返回值是一个ScanResult对象的list集合;所以可以直接写成下面的方法
public List<ScanResult> getScanResult(){ return mwifimanager.getScanResults(); }
5.获取wifi的配置信息(这是个关键的东东啊,不止包含wifi信息,还包含一个至关重要的属性networkID)
mwifimanager.getConfiguredNetworks(); 返回值是一个WifiConfiguration类型的list集合,WifiConfiguration这个东西很关键啊
6.链接wifi
最终都是通过这个方法链接:mwifimanager.enableNetwork(上面所说的networkID, true);
区别主要在于获取networkID。
可以 int networkID = mWifiManager.addNetwork(WifiConfiguration这个就是上面说的很关键的东西);