Open FSPaul2498 opened 3 months ago
opencv 或者说传统图像处理惯用的颜色是 BGR 而非 RGB,screencap 接口返回的也是
崩溃问题给一下具体的复现路径和 maa.log
崩溃问题给一下具体的复现路径和 maa.log
我设计了41906个case,我的python集成会加载所有这些case,创建一个maa实例,然后每个case顺序执行两个pipeline,两个pipeline的入口task依次为【Start-快速回到搜索页】和【Input-搜索词-】,为case id。最后一个正确执行的task为【Input-搜索词-625】,然后下一轮case的【Start-快速回到搜索页】开始发生崩溃。崩溃前controller.screencap获取保存的截图颜色正常,崩溃后开始颜色错误,个人猜测是controller崩溃,连带导致maa实例错误。 maa.log如下(log较长,我删减了最后一个正确执行的task之前的部分内容和后续重复失败task的部分内容) maa_clean.log
感觉理解有偏差,你说的崩溃是指 crash / core dump 吗?
感觉理解有偏差,你说的崩溃是指 crash / core dump 吗?
啊非常抱歉 可能是我表述的问题,我指的是发生异常后,MAA实例无法再成功执行任何task,每次run_task都会卡在首个task打印以上报错然后结束task,但MAA实例仍然存活,并没有 crash / coredump,这也许叫做“异常运行状态”更准确一些
- 这里获取的实时截图是在所谓崩溃后才错误的吗? 即, 在崩溃前获取的颜色是正常的吗?
- 如果令每个case独立创建实例, 结束后销毁, 可以复现问题吗?
其实实例创建的成本不算高, 倒是controller创建确实不低; 可以先考虑每100-200个case之后移除并重新创建一次controller, 应该能暂时绕过现在的问题
看日志执行了600多个case之后, adb进程拉起来无法绑定管道了, 可以在刚启动和接近500-600case的是用活动监视器看一下是不是fd泄露了
使用Python集成MAA,在一个实例下长时间执行不同pipeline task后,会出现崩溃情况,且使用controller.screencap获得的实时截图色彩错误。 崩溃控制台输出如下
后续执行的task均重复最后四行的报错。
我的集成逻辑设置了每次执行task后进行一次controller截图保存,查阅截图发现崩溃后每次controller截图的整体色彩错误,如下 错误的界面截图 实际上此时的界面截图 保持现场并使用MAA Debugger重连AVD发现截图色彩正常,基本可以排除AVD故障的可能性。