首先很抱歉,如果我的问题是无知的,我不是 Android 开发人员。我必须构建一个机器人应用程序(在另一个应用程序中自动执行操作)并发现这可以通过 UIAutomator
实现。 . (我知道我在滥用这个框架,但我认为我试图实现的方式是不可能的。)
我开始构建应用程序并且它可以工作,但是,我希望能够在设备未连接到 Android Studio 的情况下运行它。
是否可以通过按按钮或其他方式从应用程序执行测试?
最佳答案
UIautomation 依赖于 android.app.Instumentation,其中 can only be started through adb or from within a System App .出于安全原因,系统不会授予“对其他应用程序执行操作”的权限,除非用户明确授予了可访问权限。
出于这个原因,我担心在没有“连接到 android studio”的情况下将无法使用 UIAutomator(这种连接正是通过 adb 实现的,Android studio 使用它来连接到手机)。如果需要,您也可以直接使用 adb,但必须连接到计算机和 adb 可执行文件。
有关 UIAutomator 和 AccessibilityService 差异的更多信息 here .
更新:
即使在没有 adb 连接的情况下无法使用 UIAutomator,您仍然可以使用 this detailed guide 编写自己的无障碍服务。 .请注意,它不允许您“执行仪器测试”,而是“在另一个应用程序中执行操作”。
关于java - 从 Android 中的应用程序执行插桩测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63347232/