monkeyrunner不能同时操作两个设备的疑问

数据猴赛雷 2013-09-07 06:08:46
一、网上说monkeyrunner可以通过不同的设备名控制多个设备,具体的方法为:
device1 = MonkeyRunner.waitForConnection(1,"emulator-5554")
device2 = MonkeyRunner.waitForConnection(1,"0123456789ABCDEF")
就可以控制多台设备或者虚拟机。
二、但是我自己写了下代码,发现只能操作一个设备,我的代码如下:
# -*- coding: utf-8 -*-

from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice
from com.android.monkeyrunner.easy import EasyMonkeyDevice
from com.android.monkeyrunner.easy import By

def main():

device1 = MonkeyRunner.waitForConnection('1123456789ABCDEF')
if not device1:
print("device1 connection fail")
else:
print("device1 connection success")


device2 = MonkeyRunner.waitForConnection('0123456789ABCDEF')
if not device2:
print("device2 connection fail")
else:
print("device2 connection success")


if __name__ == "__main__":
main()
最后的结果是:
第一行显示device1 connection success,第二行指针在跳动(处于等待状态)。
我不知道为什么我就不能同时控制两台设备。
请哪位大牛能否解答一下,多谢。
附加说明:(1)通过输入adb devices命令可以发现有两个设备名,分别是1123456789ABCDEF和0123456789ABCDEF。
(2)我如果把device1 = MonkeyRunner.waitForConnection('1123456789ABCDEF')注释掉,就会显示device2 connection success
...全文
197 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
简直酷炫 2014-08-07
  • 打赏
  • 举报
回复
另外,你这样写只能测试两个设备,为什么不写成for的形式呢,那样不就可以测试更多个设备连接的时候吗?
简直酷炫 2014-08-07
  • 打赏
  • 举报
回复
多个设备连接的时候,第一个参数不能少(表示连接时间),要这样写MonkeyRunner.waitForConnection(5.0,“emulator-5556”)
ftgb123 2014-01-26
  • 打赏
  • 举报
回复
我也遇到同样的问题,请问你现在解决这个问题了么?可不可以分享一下?非常感激

80,359

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧