我自动化wifi呼叫的测试程序,我想知道有没有办法通过adb关闭/开启wifi?
我想要禁用/启用wifi或杀死wifi呼叫(com.movial.wificall)并重新启动它.
是否可以通过adb和shell命令执行此操作?
到目前为止,我发现:
android.net.wifi.WifiManager
setWifiEnabled(true/false)
Run Code Online (Sandbox Code Playgroud)
我只是不确定如何把它放在一起
我知道我们可以做到以下几点:
adb shell am start -a android.settings.AIRPLANE_MODE_SETTINGS
adb shell input keyevent 19 ; adb shell input keyevent 23
Run Code Online (Sandbox Code Playgroud)
在Android设备上打开/关闭飞行模式.
但是,无论如何都要检查当前设备是否通过ADB打开飞机模式?
我问这个是因为上面的两行代码将切换飞行模式而不知道它是打开还是关闭.但我需要一种方法来确保飞机模式确实通过亚行开启/关闭.
请帮帮我!
提前致谢
我发现了这个问题 ,我尝试如下:
settings put global airplane_mode_on 1
am broadcast -a android.intent.action.AIRPLANE_MODE --ez state true
Run Code Online (Sandbox Code Playgroud)
它在Android 4.4.1上运行得非常好
但在4.0.1中不起作用.(设置:未找到/它支持4.2或更高版本.)
所以,我再次尝试如下:
adb shell am start -a android.settings.AIRPLANE_MODE_SETTINGS
adb shell input keyevent 19
adb shell input keyevent 23
adb shell input keyevent 4
Run Code Online (Sandbox Code Playgroud)
而且,这项工作很奇怪
"AIRPLANE_MODE_SETTINGS"窗口弹出窗口 - >专注于飞行模式(不检查) - >音量调高........
它关闭了屏幕,不起作用
所以我认为这种方式并不好.
问:如何像4.1或更早版本中的'设置全局airplane_mode_on 1'一样工作?
使用calabash-android打开和关闭飞行模式的最佳方法是什么?
可以用perform_action('set_preferences', .... )吗??
上面的 set_preferences 做了什么?我想在应用程序测试期间设置 android 设置。
谢谢