我在三星 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();
}
}