简介
Android(4.4)的Wi-Fi子系统目前支持三种工作模式:
- Station
- Access Point
- Wi-Fi Direct
对于某些设备来说,可能需要Wi-Fi开机就进入到AP(Access Point)模式,然后扮演一个共享热点的角色。
WifiManager类是Android开放给应用开发者的主要接口,里面提供了Station和AP模式下的常用函数,AP相关的主要有(这些目前是隐藏的,未对应用开发者开放出来):
- setWifiApEnabled
- getWifiApState
- isWifiApEnabled
- getWifiApConfiguration
- setWifiApConfiguration
有关这些接口的详细用法,可以参见代码中的“framework/base/wifi/java/android/net/wifi/WifiManager.java”。
要在开机过程中开启AP模式的话,我们只需要在一个合适的地方(比如ConnecitivityService.java)调用WifiManager就可以了。
修改步骤
ConnectivityService是Android的连接管理服务,它由SystemServer启动,负责各个网络的连接策略管理,以及网络分享(Tether)等。我们在其构造函数的最后加上我们的逻辑即可。