任何人都有一个有效的示例,该如何在Android版Appium中使用飞行模式进行操作?由于某些原因,appim docu出于某种原因尚未完成,没有提议的方法可以正常工作,同时还带有“此方法应该工作...”。 自星期五以来,我一直处于飞行模式,非常感谢您的帮助!
答案 0 :(得分:1)
根据appium文档,您可以如下所述切换飞行模式。
driver.toggleAirplaneMode();
答案 1 :(得分:0)
我实际上并不熟悉Appium,但是您没有提到是否在appium.io文档之外寻找解决方案。我猜driver.toggleAirplaneMode()
对您没有帮助?
在这种情况下,您是否尝试过在this answer from 2016中转换Python代码?
# To enable/disable flight mode
def enableFlightMode(self,context):
driver.mobile.set_network_connection(driver.mobile.AIRPLANE_MODE)
driver.implicitly_wait(10)
if driver.network_connection == 1:
self.report_pass("The network connection is disabled in the mobile and flight mode is active.")
else:
self.report_fail("The flight mode is not active yet!")
答案 2 :(得分:0)
Appium文档中有关于如何更改连接类型的漂亮solid introduction。
driver.getConnection()
将返回您的当前状态,然后您可以将其更改为所需的状态。
注意:在真实设备上更改飞行模式状态仅适用于Android 6和更低版本
答案 3 :(得分:0)
Appium文档在许多问题上还不完善,我处理飞行模式和wifi的两种工作方法都在这里:
@SuppressWarnings("rawtypes")
public void pressFlightMode(int waitingTime){
if (isIOS()) {
//should be implemented
} else {
try {
((AndroidDriver)driver).toggleAirplaneMode();
sleep(waitingTime);
} catch (Exception e ) {
System.out.println("Error turning on flight mode.");
}
}
}
@SuppressWarnings("rawtypes")
public void pressWifi(int waitingTime){
if (isIOS()) {
//to be implemented
} else {
try {
((AndroidDriver)driver).toggleWifi();
sleep(waitingTime);
} catch (Exception e ) {
System.out.println("Error turning off flight mode.");
}
}
}
答案 4 :(得分:0)
在最新的Android版本中,已禁用启用和禁用飞行模式的权限,但是您可以使用以下命令来实现 在Appium最新的Java客户端中,您可以使用
要在Android中禁用Wifi和数据:
driver.setConnection(new ConnectionStateBuilder()。withWiFiDisabled()。withDataDisabled()。build());
要在Android中启用WiFI和数据: driver.setConnection(new ConnectionStateBuilder()。withWiFiEnabled()。withDataEnabled()。build());