连接多台设备,依次运行Python脚本,为什么运行完第一台,准备开始运行第二台时识别到的是第一台设备的poco树?

连接多台设备,依次运行Python脚本,为什么运行完第一台,准备开始运行第二台时识别到的是第一台设备的poco树?

    for i in get_devices():
        connect_device("android:///" + i[0])
        auto_setup(__file__)
        set_current(i[0])
        sleep(10)
        poco = unity_poco
        ChooseFirst(i[0])
        # disconnect_device(i[0])
        sleep(10)

这个问题的原因可能是每次循环时没有清空poco树,造成了后面的设备继承了前面设备的poco树。在每次循环前清空或重新获取poco树即可解决问题,比如可以在循环中加入以下代码:

poco = None  # 先将poco设为None,清空poco树
connect_device('android:///' + i[0])
auto_setup(__file__)
set_current(i[0])
sleep(10)
poco = unity_poco

这样就能保证每次循环获取的poco树是该设备的独立树,不会受到前面设备的影响。