如何通过adb测试wifi连接?

Ven*_*esh 6 shell automation android adb android-wifi

我通过adb自动关闭/打开wifi.

我想要根据测试用例禁用/启用wifi

到目前为止,我在这里找到了很好的信息

但是我想在执行以下命令之前测试连接

adb shell am start -a android.intent.action.MAIN -n         com.android.settings/.wifi.WifiSettings adb shell input keyevent 19 & adb shell input keyevent 19 & adb shell input keyevent 23
Run Code Online (Sandbox Code Playgroud)

如果启用,则上面的命令禁用wifi,如果禁用则启用wifi.我想首先测试连接并在需要时采取措施.我想知道是否有办法使用adb命令.这可以以编程方式实现,但我希望通过adb来完成它以使其更可靠.

此命令也适用于设备已植根的情况

adb shell "svc wifi enable" 
Run Code Online (Sandbox Code Playgroud)

以下命令在屏幕上启动测试,但不通过adb提供任何信息

adb shell am start -n com.android.settings/.wifi.WifiStatusTest
Run Code Online (Sandbox Code Playgroud)

小智 12

下面的命令将为您提供互联网状态和连接模式(手机或Wi-Fi)

adb shell dumpsys connectivity
Run Code Online (Sandbox Code Playgroud)


Ati*_*yal 10

要了解有关设备Wifi状态的所有信息:

adb shell dumpsys wifi

要知道它是否已启用:

adb shell dumpsys wifi | grep"Wi-Fi是"

要了解更详细的状态:

adb shell dumpsys wifi | grep"mNetworkInfo"

  1. 如果连接到有效网络,则显示 "已连接/已连接".它还显示已连接网络的名称.
  2. 如果已启用wifi但尚未连接到网络,则显示"已断开连接/扫描".
  3. 如果禁用wifi,则显示"DISCONNECTED/DISCONNECTED".


Jos*_*eia 5

如果您想确定 WiFi 是否打开,您可以运行以下命令,adb shell settings get global wifi_on如果打开则返回 1,如果关闭则返回 0。

如果您连接了多个设备,您可以运行adb -s [UDID_HERE] shell settings get global wifi_on以获取单个手机的 WiFi 状态。要查找 UDID,您可以运行adb devices.


Rob*_*nić 4

这只会告诉您是否有互联网访问,但您可以执行以下操作:

adb shell ping www.google.com
Run Code Online (Sandbox Code Playgroud)