由对Androidsetting的源码分析之WiFi模块的界面fragment为WiFisettings.java,关于setting模块的源码分析可以参考
Android系统源码剖析(一)---Settings
已经写了几篇关于Android源码的,源码代码量太大,所以如果想分析某个模块可能不知如何下手,说一下思路
1,分析源码英文阅读能力要够,想要分析某个模块一般找模块对应的英文,就是模块
2,找到之后首先查看清单配置文件Androidmani.fest,找到程序主界面activity
3,通过查看配置文件中的权限可以知道应用都有什么用
大致通过以上三步就可以进入源码进行分析
针对WiFi,我们通过清单文件可以知道,需要以下几个权限,其含义如下注释
<!-- 允许程序获取WiFi状态 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<!--允许程序改变WiFi状态-->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<!--允许程序获取手机网络状态-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<!--允许程序改变网络状态-->
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
<!--允许程序访问网络-->
<uses-permission android:name="android.permission.INTERNET"/>
如果使用as做开发工具的话在使用WiFi时如果不加权限会有警告来提示你,感觉还是很人性化的,如果把as的所有警告都解决了那么程序应该会很少出意料之外的bug,而且as的单步调试可以很好的去发现bug,界面美观,忍不住强烈推荐。
因为是首次接触WiFi源码,我会按代码顺序分析,当然这样可能会有些乱,完成全部分析后会再按照功能点分析,不过得等到下一篇博客喽。好了,闲话少叙,正式进入对WiFi源码的分析,