看到有公司将 UIAutomator 程序打包成独立 apk,脱离 pc 连接在真机上独立运行,谁知道是怎么实现的吗?
找到这个: http://stackoverflow.com/questions/16953809/can-one-android-application-control-another-application-via-ui-automator/17561071#17561071 原理就是把 UIAutomator 测试用例打包成 jar ,放到手机里,然后用一个应用调用系统 shell 命令来启动 UIAutomator 测试。
我猜测你看到的应该是把 UIAutomator 的测试用例打包成 jar 后,再用一个可以通过调用 shell 启动测试的 apk 把 jar 包起来。
#1 楼 @chenhengjie123 应该是不行的. Uiautomator 需要特殊的权限, 普通的 apk 没权限. 就算能调用 shell, 也调用不了 Uiautomator
@seveniruby 对的,在手机运行 UIAutomator 的 jar 包需要 root 权限
#3 楼 @kendydrm 好的,学习了。 @huokedu 你的问题已经得到解答了。你可以尝试后把过程和结论补充到正文中,让其他人也学习一下吧。
#2 楼 @seveniruby 我看过 appium 的源码,他好像也是这样做的,他是怎么实现的
ROOT 以后是可以实现的 runtime.exec 就可以调起 uiautomator
有具体操作步骤嘛