MaaXYZ / MaaFramework

基于图像识别的自动化黑盒测试框架 | An automation black-box testing framework based on image recognition
GNU Lesser General Public License v3.0
1.43k stars 171 forks source link

MAA分辨率与设备分辨率不一致 #297

Closed FSPaul2498 closed 3 months ago

FSPaul2498 commented 3 months ago

macOS使用AVD设备分辨率为1080x2400,使用MAA连接AVD识别分辨率为720x1600(来自MaaDebugger) 导致直接使用AVD原生截图功能获得的截图和剪裁 MAA无法匹配。使用MaaDebugger提供的过程截图进行剪裁则可以匹配。

系统环境: MacBook Pro 14英寸,2023年 macOS Sonoma 14.5 Apple M2 Pro Python 3.10.14 (by miniforge3) MaaFW==1.8.9

Android Studio环境: Android Studio Koala | 2024.1.1 Patch 1 Build #AI-241.18034.62.2411.12071903, built on July 11, 2024 Runtime version: 17.0.11+0-17.0.11b1207.24-11852314 aarch64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. macOS 14.5 GC: G1 Young Generation, G1 Old Generation Memory: 4096M Cores: 10 Metal Rendering is ON Registry: ide.instant.shutdown=false

AVD配置: Properties avd.ini.displayname Pixel 6 API 31 avd.ini.encoding UTF-8 AvdId Pixel_6_API_31 disk.dataPartition.size 6442450944 fastboot.chosenSnapshotFile
fastboot.forceChosenSnapshotBoot no fastboot.forceColdBoot no fastboot.forceFastBoot yes hw.accelerometer yes hw.arc false hw.audioInput yes hw.battery yes hw.camera.back virtualscene hw.camera.front emulated hw.cpu.ncore 4 hw.device.hash2 MD5:3db3250dab5d0d93b29353040181c7e9 hw.device.manufacturer Google hw.device.name pixel_6 hw.dPad no hw.gps yes hw.gpu.enabled yes hw.gpu.mode auto hw.initialOrientation portrait hw.keyboard yes hw.lcd.density 420 hw.lcd.height 2400 hw.lcd.width 1080 hw.mainKeys no hw.ramSize 2048 hw.sdCard yes hw.sensors.orientation yes hw.sensors.proximity yes hw.trackBall no image.androidVersion.api 31 image.sysdir.1 system-images/android-31/google_apis/arm64-v8a/ PlayStore.enabled false runtime.network.latency none runtime.network.speed full showDeviceFrame yes skin.dynamic yes tag.display Google APIs tag.displaynames Google APIs tag.id google_apis tag.ids google_apis vm.heapSize 256

MistEO commented 3 months ago

默认是强制缩放到 720p 的,肯定不能使用本地分辨率,不然你的脚本放到其他人电脑上(分辨率不同的)就没法用了

建议使用 截图工具 进行操作

image

如果一定要修改默认分辨率(不推荐修改),可以用 这个接口

FSPaul2498 commented 3 months ago

明白了,因为看到文档前文有提到“请注意所使用的图片需要是无损原图的裁剪。若使用安卓模拟器,请使用模拟器自带的截图功能!”,我默认理解成MAA会直接使用设备原生分辨率,就没有使用下面的工具,而是直接用GIMP做了图片剪裁。 我去使用截图工具尝试下,感谢指路。

MistEO commented 3 months ago

@neko-para 该改改文档话术了,两句话确实有点冲突(

neko-para commented 3 months ago

阿巴阿巴