在测试行业,基本做自动化的都用到minicap,什么要用到它呢?因为它截图都是毫秒级别,你知道stf设备共享平台核心模块是什么吗?就是minicap模块,通过ndk接口,执行minicap和minicap.so文件后指定接口,通过socket协议把图片传回来形成视频流,只是后来由于android10以上,权限收紧,特别是oppo,vivo,小米手机也就是国内厂商,权限更是没有开放,造成minicap无法使用,截图出现问题,只能通过scrcpy或者airtest的yosemite.apk 把视频流回传到兼容minicap的图片格式。目前这些可能对新手来讲难懂,但我们今天主要说的还是minicap,说的是什么呢?就是调试minicap是否兼容android发布的版本,比如现在发布了android11了,然后也有编译的android30了,那能不能截图,我android11的手机,要怎么确认,是否兼容呢?刚好小弟我,也是自己匹配了荣耀V50pro android11 minicap 的android30是否兼容,以便于把该设备,上架stf设备共享平台; 今天我分享不是怎么快,而是分享下怎么去看自己的android11的手机设备minicap是否兼容: 环境: 1.安装node11.15.0,安装完以后,通过node -v 查看版本看是否安装完成;
2.通过命令 npm install -g ws 和npm install -g express ,来安装ws和express;
3.从github中的stf 下载minicap-master,然后解压; 也可从网盘中下载: 链接:https://pan.baidu.com/s/1ag7gOAqCGsYNpUUMiaBvfA 提取码:4399
4.从网盘中下载: 链接:https://pan.baidu.com/s/12mpz52m2KtbzWMpqGwmPUA 提取码:4399 为什么从这个下载,因为这个包含了android30,也就是android11系统,刚好是大家所需要的; 5.准备1台安卓11的手机,当然其他手机也是可以的。我以荣耀v50pro做演示 步骤: 1.usb连接设备,输入adb devices 确认设备已连接;
2.要给手机安装minicap,需要先传两个文件到手机,分别是minicap可执行文件和minicap.so动态链接库; 获取CPU架构,命令:adb shell getprop ro.product.cpu.abi 获取sdk版本(安卓)adb shell getprop ro.build.version.sdk
3.知道cpu架构和sdk版本以后,cpu进入到stf_libs\arm64-v8a\里面把minicap文件push到/data/local/tmp里面,sdk版本是进入到stf_libs\minicap-shared\aosp\libs\android-30\arm64-v8a里面把minicap.so文件push到/data/local/tmp里面,记得这两个路径不一样;
4.修改权限,命令如下: adb shell chmod 777 /data/local/tmp/minicap adb shell chmod 777 /data/local/tmp/minicap.so
5.获取手机分辨率,命令如下:adb shell wm size
6.启动手机端服务,命令如下: adb shell LD_LIBRARY_PATH=/data/local/tmp /data/local/tmp/minicap -P 1236x2676@1236x2676/0 看到server start 启动就是启动成功;
如果是android11系统,是oppo就会提示权限问题;
7.另外打开一个dos窗口,进行端口映射,命令如下: adb forward tcp:1717 localabstract:minicap
8.在dos窗口,进入minicap-master\minicap-master\example目录下,输入node app.js,启动项目
9.打开浏览器,在地址栏输入localhost:9002,就可以看到手机页面投屏到浏览器上,
这说明兼容该手机,代表了你知道minicap的运行机制了。可以用来该机型的自动化截图和把该手机放到stf设备共享平台了。 以上,就是整体关于minicap android30的调试实践分享。如对您有帮助,欢迎分享,点赞。