WIFI模块之wpa_cli控制wpa_supplicant连接wifi
1.启动wlan0
root@M6708-T:/# ifconfig wlan0 up
2.启动wpa服务,需要一个wpa_supplicant.conf,路径是 /etc/wpa_supplicant.conf
我的配置如下:
#PSK/TKIP
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="ARTC_2.4GHz"
scan_ssid=1
psk="Artc20010626"
key_mgmt=WPA-EAP WPA-PSK IEEE8021X NONE
group=CCMP TKIP WEP104 WEP40
}
其中的ctrl_interface就是用来和wpa_cli通信使用,其原理是wpa_supplicant是个干活的wifi服务器(比如连接wifi,断开wifi,启动热点等),wpa_cli就是个客户端,通过本地socket通信连接上wpa_supplicant服务器,发命令叫他干活。
3.把wpa_supplicant服务启动起来
wpa_supplicant -iwlan0 -c/system/etc/wifi/wpa_supplicant.conf -B
B是在后台运行,如果想要看过程中的详细log,可以加上参数-dd,然后用logcat同时看log
4.用wpa_cli客户端连接到wpa
root@M6708-T:/# wpa_cli -iwlan0 -p /var/run/wpa_supplicant
wpa_cli的操作可以看参考的博文。
5.udhcpc处理ip地址
root@M6708-T:/# udhcpc -iwlan0
这样就可以获取到一个可用的IP地址,比如192.168.0.112
6.使用ifconfig设置给wlan0
root@M6708-T:/# ifconfig wlan0 192.168.0.112
7.用ping命令来看下是否连通网关
root@M6708-T:/# ping 192.168.0.1
参考--->
https://www.cnblogs.com/tid-think/p/10913680.html