今天再来水两篇文章:来说说如何去debug wifi相关。命令很简单,adb shell 下执行cmd wifi.,然后加上对应参数就可以,来看看具体的参数
同样的,我们在命令行,输入cmd wif。查看help 信息。如下:
这里说一下,如何去看-help 信息,去输入正确的命令。如下,一般上面一行是 命令的格式,紧跟着下面一行是 对此命令的解释。我们按照这个把对应想要输入的参数命令加到 主命令后面就行。cmd wifi list-scan-results 或者adb shell cmd wifi list-scan-results,就能打出 扫描周围wifi 的信息。
再比如:如下的命令格式:
add-suggestion open|owe|wpa2|wpa3 [] [-u] [-m] [-s] [-d][-b ][-b ]
-
被<> 包裹的是具体要传入给代码的参数。
-
| 是或者的意思,选一个适合场景的,必选。
-
[] 可选参数,不同的参数代表不同的意思。
综上,如果要将建议的wifi 传到列表里面,则要这样执行:
cmd wifi add-suggestion emccedu wpa3 -d 18:3e:25:sd:sd:24
ok.接下来按照下面的解释,选择你需要的debug 命令来执行吧。
:/ # cmd wifi
Wi-Fi (wifi) commands:
help or -h
Print this help text.
get-country-code
Gets country code as a two-letter string
set-wifi-enabled enabled|disabled
Enables/disables Wifi on this device.
set-scan-always-available enabled|disabled
Sets whether scanning should be available even when wifi is off.
list-scan-results
Lists the latest scan results
start-scan
Start a new scan
list-networks
Lists the saved networks
connect-network <ssid> open|owe|wpa2|wpa3 [<passphrase>] [-m] [-d] [-b <bssid>]
Connect to a network with provided params and add to saved networks list
<ssid> - SSID of the network
open|owe|wpa2|wpa3 - Security type of the network.
- Use 'open' or 'owe' for networks with no passphrase
- 'open' - Open networks (Most prevalent)
- 'owe' - Enhanced open networks
- Use 'wpa2' or 'wpa3' for networks with passphrase
- 'wpa2' - WPA-2 PSK networks (Most prevalent)
- 'wpa3' - WPA-3 PSK networks
-m - Mark the network metered.
-d - Mark the network autojoin disabled.
-b <bssid> - Set specific BSSID.
add-network <ssid> open|owe|wpa2|wpa3 [<passphrase>] [-m] [-d] [-b <bssid>]
Add/update saved network with provided params
<ssid> - SSID of the network
open|owe|wpa2|wpa3 - Security type of the network.
- Use 'open' or 'owe' for networks with no passphrase
- 'open' - Open networks (Most prevalent)
- 'owe' - Enhanced open networks
- Use 'wpa2' or 'wpa3' for networks with passphrase
- 'wpa2' - WPA-2 PSK networks (Most prevalent)
- 'wpa3' - WPA-3 PSK networks
-m - Mark the network metered.
-d - Mark the network autojoin disabled.
-b <bssid> - Set specific BSSID.
forget-network <networkId>
Remove the network mentioned by <networkId>
- Use list-networks to retrieve <networkId> for the network
status
Current wifi status
set-verbose-logging enabled|disabled
Set the verbose logging enabled or disabled
add-suggestion <ssid> open|owe|wpa2|wpa3 [<passphrase>] [-u] [-m] [-s] [-d][-b <bssid>]
Add a network suggestion with provided params
Use 'network-suggestions-set-user-approved com.android.shell yes' to approve suggestions added via shell (Needs root access)
<ssid> - SSID of the network
open|owe|wpa2|wpa3 - Security type of the network.
- Use 'open' or 'owe' for networks with no passphrase
- 'open' - Open networks (Most prevalent)
- 'owe' - Enhanced open networks
- Use 'wpa2' or 'wpa3' for networks with passphrase
- 'wpa2' - WPA-2 PSK networks (Most prevalent)
- 'wpa3' - WPA-3 PSK networks
-u - Mark the suggestion untrusted.
-m - Mark the suggestion metered.
-s - Share the suggestion with user.
-d - Mark the suggestion autojoin disabled.
-b <bssid> - Set specific BSSID.
remove-suggestion <ssid>
Remove a network suggestion with provided SSID of the network
remove-all-suggestions
Removes all suggestions added via shell
list-suggestions
Lists the suggested networks added via shell
set-connected-score <score>
Set connected wifi network score (to choose between LTE & Wifi for default route).
This turns off the active connected scorer (default or external).
Only works while connected to a wifi network. This score will stay in effect until you call reset-connected-score or the device disconnects from the current network.
<score> - Integer score should be in the range of 0 - 60
reset-connected-score
Turns on the default connected scorer.
Note: Will clear any external scorer set.
start-softap <ssid> (open|wpa2) <passphrase> [-b 2|5|6|any]
Start softap with provided params
Note that the shell command doesn't activate internet tethering. In some devices, internet sharing is possible when Wi-Fi STA is also enabled and isassociated to another AP with internet access.
<ssid> - SSID of the network
open|wpa2 - Security type of the network.
- Use 'open' for networks with no passphrase
- Use 'wpa2' for networks with passphrase
-b 2|5|6|any - select the preferred band.
- Use '2' to select 2.4GHz band as the preferred band
- Use '5' to select 5GHz band as the preferred band
- Use '6' to select 6GHz band as the preferred band
- Use 'any' to indicate no band preference
Note: If the band option is not provided, 2.4GHz is the preferred band.
The exact channel is auto-selected by FW unless overridden by force-softap-channel command
stop-softap
Stop softap (hotspot)
set-ipreach-disconnect enabled|disabled
Sets whether CMD_IP_REACHABILITY_LOST events should trigger disconnects.
get-ipreach-disconnect
Gets setting of CMD_IP_REACHABILITY_LOST events triggering disconnects.
set-poll-rssi-interval-msecs <int>
Sets the interval between RSSI polls to <int> milliseconds.
get-poll-rssi-interval-msecs
Gets current interval between RSSI polls, in milliseconds.
force-hi-perf-mode enabled|disabled
Sets whether hi-perf mode is forced or left for normal operation.
force-low-latency-mode enabled|disabled
Sets whether low latency mode is forced or left for normal operation.
network-suggestions-set-user-approved <package name> yes|no
Sets whether network suggestions from the app is approved or not.
network-suggestions-has-user-approved <package name>
Queries whether network suggestions from the app is approved or not.
imsi-protection-exemption-set-user-approved-for-carrier <carrier id> yes|no
Sets whether Imsi protection exemption for carrier is approved or not
imsi-protection-exemption-has-user-approved-for-carrier <carrier id>
Queries whether Imsi protection exemption for carrier is approved or not
imsi-protection-exemption-clear-user-approved-for-carrier <carrier id>
Clear the user choice on Imsi protection exemption for carrier
network-requests-remove-user-approved-access-points <package name>
Removes all user approved network requests for the app.
clear-user-disabled-networks
Clears the user disabled networks list.
send-link-probe
Manually triggers a link probe.
force-softap-channel enabled <int> | disabled
Sets whether soft AP channel is forced to <int> MHz
or left for normal operation.
force-country-code enabled <two-letter code> | disabled
Sets country code to <two-letter code> or left for normal value
set-wifi-watchdog enabled|disabled
Sets whether wifi watchdog should trigger recovery
get-wifi-watchdog
Gets setting of wifi watchdog trigger recovery.
get-softap-supported-features
Gets softap supported features. Will print 'wifi_softap_acs_supported'
and/or 'wifi_softap_wpa3_sae_supported', each on a separate line.
settings-reset
Initiates wifi settings reset
add-request <ssid> open|owe|wpa2|wpa3 [<passphrase>] [-b <bssid>]
Add a network request with provided params
Use 'network-requests-set-user-approved android yes' to pre-approve requests added via rooted shell (Not persisted)
<ssid> - SSID of the network
open|owe|wpa2|wpa3 - Security type of the network.
- Use 'open' or 'owe' for networks with no passphrase
- 'open' - Open networks (Most prevalent)
- 'owe' - Enhanced open networks
- Use 'wpa2' or 'wpa3' for networks with passphrase
- 'wpa2' - WPA-2 PSK networks (Most prevalent)
- 'wpa3' - WPA-3 PSK networks
-b <bssid> - Set specific BSSID.
remove-request <ssid>
Remove a network request with provided SSID of the network
remove-all-requests
Removes all active requests added via shell
list-requests
Lists the requested networks added via shell
network-requests-set-user-approved <package name> yes|no
Sets whether network requests from the app is approved or not.
Note: Only 1 such app can be approved from the shell at a time
network-requests-has-user-approved <package name>
Queries whether network requests from the app is approved or not.
Note: This only returns whether the app was set via the 'network-requests-set-user-approved' shell command