Android UIAutomator:setAsHorizo​​ntalList()抛出noSuchMethodError

时间:2013-04-25 11:17:54

标签: java android testing nosuchmethoderror uiautomator

我正在三星Galaxy SII上运行Android 4.1.2版。我最近开始使用UIAutomator来测试我的用户界面。问题是,每次我尝试在手机上运行测试时,我都会在UIScrollable对象上使用的方法setAsHorizo​​ntalList()上获得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();
        }
    }

1 个答案:

答案 0 :(得分:2)

不幸的是,setAsHorizo​​ntalList()函数只能在4.2.2(API 17)设备上运行,而不能在API 16上运行,你可以在模拟器或带有API 17的平板电脑上试用它。我很难学到一些几天前