获取活动管理的状态

用户

我正在编写一个python脚本,它调用adb来执行JUnit测试。我使用了'adb get state'和'adb wait-for device'来等待模拟器启动并准备就绪,但由于某些原因,这两种方法启动得太早。返回这些函数后,当我开始运行测试时,会出现以下错误:

android.util.AndroidException: Can't connect to activity manager; is the system running?

有没有办法让我知道活动经理的状态?如果我能投票的话,那就足够了。在

谢谢!在


已被浏览了5616次
更新日期: 2020-09-28 08:17:37
1 个回答
fefe Tyson

adb wait for device告诉您设备上的adbd是否有响应。但是,它是设备上的linux级守护进程,远低于通常在之后启动的android平台的级别(除了刚刚从设置菜单启用ADB的情况)。在

特别是在模拟器上,启动java级别的android运行时是一个漫长的过程,因此adbd响应时可能会有几秒钟到几分钟的时间,但是没有ActivityManager可以与之对话。在

在adb wait for server之后,将一次尝试执行您正在尝试执行的任何操作(假定运行“am”命令)以一秒钟的延迟放入一个循环中并检查输出,这可能是最简单的解决方案。在

评论 - 2020年8月7日 16:59

最新Python问答

推荐Python问答