我需要在测试前启用和禁用Android中的位置服务。我尝试了以下解决方案但没有任何效果。
场景:1 ADB命令
adb shell设置放置安全的location_providers_allowed + network,gps adb shell设置放置安全的location_providers_allowed -network,gps
这些命令有时会工作,但并非所有时间都在工作,所以我的测试很多次都会因为禁用而失败。
场景:2 toggleLocationService()方法
public static void enableAndDisableLocation(AppiumDriver<WebElement> driver) {
((AndroidDriver<WebElement>) driver).openNotifications();
((AndroidDriver<WebElement>) driver).toggleLocationServices();
}
是否有其他解决方案可以使用Appium在Android中启用和停用位置服务。此外,我想在启用和禁用之前了解位置的状态。
我正在使用Java客户端5.0.4 在Android Nougat中进行测试。
答案 0 :(得分:1)
启用:
adb shell settings put secure location_providers_allowed +gps
adb shell settings put secure location_providers_allowed +network
禁用:
adb shell settings put secure location_providers_allowed -gps
adb shell settings put secure location_providers_allowed -network