如何直接调用uiautomator-api而不使用仪器'?

时间:2016-01-06 10:37:40

标签: uiautomator

我是使用uiautomator的初学者。

我知道我们可以通过adb shell am instrument运行uiautomator-test-case~'命令。

目前,我正试图直接致电uiautomator-api。

这是我的示例类文件。

import com.android.uiautomator.core.UiObject;
import com.android.uiautomator.core.UiObjectNotFoundException;
import com.android.uiautomator.core.UiScrollable;
import com.android.uiautomator.core.UiSelector;
import com.android.uiautomator.testrunner.UiAutomatorTestCase;

public class ExecutorBase extends UiAutomatorTestCase {

    public void pressHomeWrapper() throws UiObjectNotFoundException {
        Log.d(TAG, "getUiDevice: " + getUiDevice());
        getUiDevice().pressHome();      
    }
    public TagResult pressHomeUA() throws UiObjectNotFoundException {
        boolean isPass = false;     
        this.pressHomeWrapper();        
        return TagResult.NEW(isPass);
    }
}

每当我尝试调用pressHomeUA()时,我都会在下面收到RuntimeException错误。

08-20 17:53:30.687: E/JavaBinder(14377): *** Uncaught remote exception!  (Exceptions are not yet supported across processes.)
08-20 17:53:30.687: E/JavaBinder(14377): java.lang.RuntimeException: Stub!
08-20 17:53:30.687: E/JavaBinder(14377):    at com.android.uiautomator.testrunner.UiAutomatorTestCase.<init>(UiAutomatorTestCase.java:5)
08-20 17:53:30.687: E/JavaBinder(14377):    at com.lge.art.play.script.tag.ExecutorBase.<init>(ExecutorBase.java:247)
08-20 17:53:30.687: E/JavaBinder(14377):    at com.lge.art.play.script.runner.ScriptRunner.<init>(ScriptRunner.java:101)

所以我想知道如何直接调用uiautomator-api。

你能告诉我这有可能吗?

感谢你的支持。

0 个答案:

没有答案