如何在apk中捆绑UIAutomator

时间:2013-06-05 16:34:20

标签: android apk uiautomator

我正在尝试创建一个在单击按钮时启动UIAutomator的应用程序。目前运行时问题是UiAutomator的NoclassDefFound - 我已经在构建路径中添加了uiautomator jar。我有什么指针可以解决这个问题?谢谢!

@Override
    protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);     

        Button clickMe = (Button) findViewById(R.id.button1);
        clickMe.setOnClickListener(new OnClickListener () {
                public void onClick(View arg0) {
                    Log.i("Hello", "Prior to clicking");

                    UiObject clickBtn = new UiObject(new UiSelector().description("Apps"));
                    try {
                        clickBtn.click();
                    } catch (UiObjectNotFoundException e) {
                        Log.i("Hello", "Error is catched");
                    }

                    Log.i("Hello", "Button is clicked");
                }
        });

1 个答案:

答案 0 :(得分:5)

直接从Android应用程序调用UiAutomator方法是不可能的,但是你可以构建一个UiAutomator测试jar,将它推送到你的设备上,然后从你的应用程序中运行jar(如果你有root用户)。

请参阅Creating UiAutomator test cases以创建uiautomator测试和 有关如何从应用程序调用uiautomator,请参阅my answer here