(1)通过adb命令行,可以直接打开supplicant,从而运行wpa_cli,可以解决客户没有显示屏而无法操作WIFI的问题,还可以避免UI的问题带到driver。进一步来说,可以用在很多没有键盘输入和LCD输出的安卓终端产品的操作上。

wpa_supplicant包含两个主要的可执行工具:wpa_supplicant和wpa_cli。wpa_supplicant是核心程序,它和wpa_cli的关系就是服务和客户端的关系:后台运行wpa_supplicant,使用wpa_cli来搜索、设置、和连接网络。

(2)在wpa_cli交互模式下可以执行很多命令,列表如下:

Full command

Short command

Description

status

stat

displays the current connection status

disconnect

disc

prevents wpa_supplicant from connecting to any access point

quit

q

exits wpa_cli

terminate

term

kills wpa_supplicant

reconfigure

recon

reloads wpa_supplicant with the configuration file supplied (-c parameter)

scan

scan

scans for available access points (only scans it, doesn't display anything)

scan_result

scan_r

displays the results of the last scan

list_networks

list_n

displays a list of configured networks and their status (active or not, enabled or disabled)

select_network

select_n

select a network among those defined to initiate a connection (ie select_network 0)

enable_network

enable_n

makes a configured network available for selection (ie enable_network 0)

disable_network

disable_n

makes a configured network unavailable for selection (ie disable_network 0)

remove_network

remove_n

removes a network and its configuration from the list (ie remove_network 0)

add_network

add_n

adds a new network to the list. Its id will be created automatically

set_network

set_n

shows a very short list of available options to configure a network when supplied with no parameters.

See next section for a list of extremely useful parameters to be used with set_network and get_network.

get_network

get_n

displays the required parameter for the specified network. See next section for a list of parameters

save_config

save_c

saves the configuration

(3)平台操作实例(仅限于MTK平台 且具ROOT权限)

A,首先保证ADB连入,且能运行adb remount,这样避免系统文件只读。然后设置wpa_cli和wpa_supplicant有较强权限。

B,运行echo 1 > /dev/wmtWifi,启动WIFI驱动。但是这个使能不会表现在安卓界面上层,默认是要在启动安卓时开启WIFI模块的,也即设置中的WIFI要默认ON。

C,进入/system/bin目录,首先运行服务端wpa_supplicant。

./wpa_supplicant -iwlan0 -Dnl80211 -c/system/etc/wifi/wpa_supplicant.conf

正常启动后的回显如下:

不可收入态表明该服务端已经在运行了(也可能是可输入状态,只要后面的wpa_cali可连接就行)。-i -D -c的参数意义可直接在Help中查询,具体有些参数可能因平台不同而有差异。

D,另开启一个ADB SHELL,作客户端运行wpa_cali。如下:

cd /system/bin

wpa_cli -p /data/misc/wpa_supplicant

回显如下说明正常并处于交互模式:

E,执行一系列命令看看

scan

scan_results

F,连WIFI的命令行,有以下几种:

for AP that doesn`t have encryption
>add_network (It will display a network id for you, assume it returns 0)
>set_network 0 ssid “666”
>set_network 0 key_mgmt NONE
>enable_network 0
>quit

for AP that has WEP
>add_network (assume returns 1)
>set_network 1 ssid “666”
>set_network 1 key_mgmt NONE
>set_network 1 wep_key0 “your ap passwork”(if usting ASCII, it need
double quotation marks, if using hex, then don`t need the double quotation
marks)
>set_network 1 wep_tx_keyidx 0
>select_network 1 (optional, remember, if you are connecting with another
AP, you should select it to disable the another)
>enable_network 1

for AP that has WPA-PSK/WPA2-PSK
>add_network (assume returns 2)
>set_network 2 ssid “666”
>set_network 2 psk “your pre-shared key”
>select_network 2 (optional, remember, if you are connecting with another
AP, you should select it to disable the another)
>enable_network 2

我自己的实验图如下:

以上过程就说明联网OK,可以上网了。

参考原文:http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece7631046893b4c4380146d96864968d4e414c42246100024b8ed7a66471980853a3c50f11e41bca770216c5d61aa9bc98b4addb9922b3bcd7a742613d51742c419de8a1c729f7e875a98ea42b3e1&p=8b2a975bcd8711a052eedb2f4a4c&newp=8b2a971f81822dec08e29e7d495d92695c02dc3051dcd14f2895ff0b&user=baidu&fm=sc&query=adb+shell+wifi&qid=&p1=4

参考原文:http://blog.sina.com.cn/s/blog_55465b470100l73l.html

wpa_supplicant的用法相关推荐

  1. Wpa_supplicant.conf用法小结

    Wpa_supplicant是linux系统下一个非常强大的无线网卡管理程序.google搜索到的它似乎不支持WPA2和AES,其实不然,参考它的文档可以发现,WPA2只是RSN的别名,而AES也是C ...

  2. wpa_supplicant, wpa_cli用法

    Android系统中对于WIFI的设置集成到了"设置"中,其实跟手动设置差不多.这里介绍下如何手动连接WIFI,以方便以后调试WIFI. 第一步要做的就是要加载WIFI模块驱动了. ...

  3. wpa_supplicant 介绍

    wpa_supplicant 介绍 授权 Copyright (c) 2003-2009, Jouni Malinen <j@w1.fi> 本程序是GPL版本2和BSD许可证双授权,两者随 ...

  4. wireless tools笔记

    wireless tools移植 版本 wireless_tools.29.tar.gz 下载地址 http://www.hpl.hp.com/personal/Jean_Tourrilhes/Lin ...

  5. [xhr4412][extension 6] 使用 Ralink USB_DEVICE(0x148f, 0x3070) 无线网卡

    文章目录 前言 一.内核网卡驱动 1. 配置 2. 测试 二.libnl 三.wpa_supplicant 1. build 2. rootfs 3. test hostapd & dhcp ...

  6. RTL8723BS 移植(WIFI部分)已解决

    硬件平台:N3290X (ARM9) 驱动接口:(必须)支持SDIO Linux系统版本:2.6.35.4 编译器版本:arm-linux-gcc-4.3.2 RTL8723BS WIFI部分源码下载 ...

  7. Wpa_supplicant用法

    Wpa_supplicant是linux系统下一个非常强大的无线网卡管理程序.google搜索到的它似乎不支持WPA2和AES,其实不然,参考它的文档可以发现,WPA2只是RSN的别名,而AES也是C ...

  8. Linux系统Wpa_supplicant用法小结(转)

    Wpa_supplicant是linux系统下一个非常强大的无线网卡管理程序.google搜索到的它似乎不支持WPA2和AES,其实不然,参考它的文档可以发现,WPA2只是RSN的别名,而AES也是C ...

  9. Linux系统Wpa_supplicant用法小结

     Wpa_supplicant是linux系统下一个非常强大的无线网卡管理程序.google搜索到的它似乎不支持WPA2和AES,其实不然,参考它的文档可以发现,WPA2只是RSN的别名,而AES ...

最新文章

  1. mysql 时间点_MySQL 基于时间点与位置恢复
  2. 【Android APT】注解处理器 ( 配置注解依赖、支持的注解类型、Java 版本支持 )
  3. iOS地图定位(Map)
  4. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第17篇]述和比较DES和AES的轮结构
  5. 前端处理带t的时间_适合家用的跑步机?阿迪达斯轻爵T-19i跑步机测评|adidas|商用机...
  6. python与数据库完整项目_python入门:操作数据库项目实例分享
  7. MATLAB信号处理之常用信号的表示(2)
  8. HTML浅学入门---基础知识 (1)基本规则
  9. Ansible详解(五)——Ansible其他模块使用详解
  10. 那智机器人作业原点位置设定
  11. round()函数的使用方法
  12. 声音信号 dB 及 dBA 的计算方式
  13. ubuntu18.04 HP笔记本合上盖子不休眠不断网
  14. SEO新手入门系列2022(五):挖掘关键词
  15. word目录如何取消某级标题的页码
  16. 使用requests.get()得到的源代码与浏览器中的不一样
  17. winform form.show() 以及form.showdialog()区别 以及form.show()控件不显示解决办法
  18. plc300c语言对温度的编程,STEP7 300PLC中如何计算温度变化率?-工业支持中心-西门子中国...
  19. 光纤宽带接入工程设计降本增效方案集(2)
  20. 召唤神龙-万宁版源码,游戏直播用不挂(麦田资源网)

热门文章

  1. 获取webservice(wsdl)数据包
  2. python2.7安装pyqt5版本,py3
  3. 报错:NoSuchAlgorithmException: Algorithm HmacSHA1 not available
  4. Effect C++ 学习笔记三:资源管理
  5. (function($){...})(jQuery)、$(function(){ })和$.fn
  6. 复频域求零输入响应_零输入响应是齐次解的一部分
  7. 牛顿下山法求解非线性方程(组)(C实现)
  8. 网络营销复习题及答案
  9. 网络广播mms直播地址
  10. eNSP命令大全(所有命令)