我正在三星Galaxy SII上运行Android 4.1.2版。我最近开始使用UIAutomator来测试我的用户界面。问题是,每次我尝试在手机上运行测试时,我都会在UIScrollable对象上使用的方法setAsHorizontalList()上获得NoSuchMethodError。 Eclipse确实识别该方法,并且不会产生编译错误。
private void turnOffNetwork() throws UiObjectNotFoundException {
getUiDevice().pressHome();
UiObject allAppsButton = new UiObject(new UiSelector().description("Apps"));
allAppsButton.clickAndWaitForNewWindow();
UiObject appsTab = new UiObject(new UiSelector().text("Apps"));
appsTab.click();
UiScrollable appViews = new UiScrollable(new UiSelector().scrollable(true));
appViews.setAsHorizontalList();
UiObject settingsApp = appViews.getChildByText(new UiSelector().className(android.widget.TextView.class.getName()), "Instellingen");
settingsApp.clickAndWaitForNewWindow();
UiObject switchObject = new UiObject(new UiSelector().className(android.widget.Switch.class.getName()));
if (switchObject.isChecked()) {
switchObject.click();
}
}
答案 0 :(得分:2)
不幸的是,setAsHorizontalList()函数只能在4.2.2(API 17)设备上运行,而不能在API 16上运行,你可以在模拟器或带有API 17的平板电脑上试用它。我很难学到一些几天前