我正在尝试创建一个在单击按钮时启动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");
}
});
答案 0 :(得分:5)
直接从Android应用程序调用UiAutomator方法是不可能的,但是你可以构建一个UiAutomator测试jar,将它推送到你的设备上,然后从你的应用程序中运行jar(如果你有root用户)。
请参阅Creating UiAutomator test cases以创建uiautomator测试和 有关如何从应用程序调用uiautomator,请参阅my answer here。