You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Appium Python实现移动设备网络的断开与连接?

Python + Appium 实现移动设备网络断开与恢复

Hey there! 我刚好在Appium自动化测试里折腾过不少网络控制的需求,给你分享Android和iOS两大平台的具体实现方法,都是Python代码,直接就能套用~

Android 平台实现方法

Android的网络控制方式比较灵活,有两种常用方案:

方案1:调用ADB系统命令(推荐,兼容性好)

通过Appium执行ADB shell命令,直接控制系统的WiFi和移动数据开关,大部分非Root设备也支持:

# 断开WiFi
driver.execute_script('mobile: shell', {'command': 'svc wifi disable'})

# 恢复WiFi
driver.execute_script('mobile: shell', {'command': 'svc wifi enable'})

# 断开移动数据
driver.execute_script('mobile: shell', {'command': 'svc data disable'})

# 恢复移动数据
driver.execute_script('mobile: shell', {'command': 'svc data enable'})

方案2:使用Appium内置的NetworkConnection API

这个是Appium封装好的方法,适合快速切换整体网络状态:

首先需要导入对应的枚举类:

from appium.webdriver.connectiontype import NetworkConnectionType

然后执行网络切换:

# 断开所有网络(类似关闭WiFi+移动数据,部分设备可能触发飞行模式)
driver.set_network_connection(NetworkConnectionType.NO_CONNECTION)

# 恢复所有网络(WiFi+移动数据同时开启)
driver.set_network_connection(NetworkConnectionType.ALL_NETWORK_ON)

# 仅开启WiFi,关闭移动数据
driver.set_network_connection(NetworkConnectionType.WIFI_ONLY)

# 仅开启移动数据,关闭WiFi
driver.set_network_connection(NetworkConnectionType.DATA_ONLY)

iOS 平台实现方法

iOS因为系统权限限制,需要用Appium专门提供的mobile命令来操作:

WiFi 控制

可以直接切换WiFi状态,或者强制设置开关:

# 切换WiFi状态(断开/恢复一键切换)
driver.execute_script('mobile: toggleWiFi')

# 直接设置WiFi为关闭状态(iOS 10+支持)
driver.execute_script('mobile: setPrefs', {'wifiEnabled': False})

# 直接设置WiFi为开启状态
driver.execute_script('mobile: setPrefs', {'wifiEnabled': True})

移动数据控制

通过专门的命令控制蜂窝数据:

# 断开移动数据
driver.execute_script('mobile: setCellularDataEnabled', {'enabled': False})

# 恢复移动数据
driver.execute_script('mobile: setCellularDataEnabled', {'enabled': True})

注意事项

  • Android设备:部分定制化ROM可能对svc命令有限制,要是遇到执行失败的情况,可以尝试用adb shell am start -a android.intent.action.MAIN -n com.android.settings/.WirelessSettings打开设置页面,再用Appium元素定位点击开关(这种方法兼容性最强,但步骤多)。
  • iOS设备:需要确保WebDriverAgent有足够的权限,建议在Desired Capabilities里添加autoAcceptAlerts: True,避免系统权限弹窗打断操作;模拟器和真机的命令兼容性一致,可以放心使用。

内容的提问来源于stack exchange,提问作者TeSter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 03:24:11