1.minicap

1.1 minicap介绍

minicap是开源项目STF(Smartphone Test Farm)中的一个工具,负责屏幕显示。

stf自己写了一个工具叫minicap用来替代原生的screencap,这个工具是stf框架的依赖工具之一,最近手头上的项目刚好由于帧率卡顿需要优化,刚好来在testerhome社区看到对STF的介绍,WEB 端批量移动设备管理控制工具 STF 的环境搭建和运行

minicap工具是用NDK开发的,属于Android的底层开发,该工具分为两个部分,一个是动态连接库.so文件,一个是minicap可执行文件。但不是通用的,因为CPU架构的不同分为不同的版本文件,STF提供的minicap文件根据CPU 的ABI分为如下4种:

arm64-v8aarmeabi-v7a,x86,x86_64 架构。而minicap.so文件在这个基础上还要分为不同的sdk版本。这些都可以从Github地址:https://github.com/openstf/minicap下载而来

1.2 准备工作:推送测试手机需要的文件

查看CPU架构:adb shell getprop ro.product.cpu.abi
查看android版本level:adb shell getprop ro.build.version.sdk

根据上面获取的信息,将适合设备的可执行文件和.so文件push到手机的/data/local/tmp目录下,
如果你不想自己build这些文件可以去STF框架的源码下找到vendor/minicap文件夹下找到这些文件,将这两个文件push到我手机的/data/local/tmp目录下:

这里看到minicap可执行文件没有执行权限,adb shell进入到目录下chmod 777 minicap

minicap有可执行权限了,接下来测试一下minicap是否可用,其中-P后面跟的参数为你屏幕的尺寸 (我这里是华为P7,设置-关于手机-分辨率可以看到1080x1920)
adb shell LD_LIBRARY_PATH=/data/local/tmp /data/local/tmp/minicap -P 1080x1920@1080x1920/0 -t

看到如上OK的消息,表面准备工作OK了。

2.安装Node.js

官网下载 https://nodejs.org/en/

这里用的最新的5.0版本

下载完成之后,双击"node-v5.0.0-x86.msi",开始安装nodejs,自定义安装在E:\nodejs下面。

该引导步骤会将node.exe文件安装到E:\nodejs目录下,并将该目录添加进PATH环境变量。

在cmd控制台输入:node -v,控制台将打印出:v5.0.0,出现版本提示表示安装成功。

由于新版的nodejs已经集成了npm,所以之前npm也一并安装好了。同样可以使用cmd命令行输入"npm -v"来测试是否成功安装。如下图,出现版本提示表示安装成功。

本文要启动用例工程需要另外安装ws和express包

npm install ws –g

npm install express -g

如果有设置代理必须先设置好代理再下载,

(如果密码中有@符号请更改密码,中括号是不要的,如果没有就连中括号一起略去)

npm config set proxy=http://[user]:[password]@[proxy_host]:[proxy_port]

3.Github上Minicap开源框架DEMO启动

3.1 启动手机端服务

启动minicap中的Demo,用上面测试的命令去掉最后的-t

adb shell LD_LIBRARY_PATH=/data/local/tmp /data/local/tmp/minicap -P 1080x1920@1080x1920/0

3.2 本地端口转发

上面其实是启动了一个socket服务器,我们需要跟该socket服务通信,首先我们要将本地的端口映射到minicap工具上,端口随意:

adb forward tcp:1717 localabstract:minicap

cd到example目录下在控制台输入 node app.js 回车

如果报错ws express找不到,而你确定已经在第二步安装nodejs步骤中已经安装

修改minicap中app.js引用的ws express路径为本地模块路径(前端懂得少,如果有其他方法希望不吝赐教)

控制台显示  Listening on port 9002

3.3 启动浏览器,查看手机屏幕

用chrome浏览器打开:http://localhost:9002/(其他浏览器请自测)

启动手机端的控制台刷刷刷地跑数据啊

浏览器看到的效果

STF开源框架之minicap工具相关推荐

  1. stf java_STF 框架之 minicap 工具

    minicap 介绍 从WEB 端批量移动设备管理控制工具 STF 的环境搭建和运行文章了解到 STF 这个工具,然后试用了一下.最近在做一个测试工具,发现 Android 原生的截图工具截图非常缓慢 ...

  2. 开源集锦(五)开源框架和快速开发工具类

    Volley https://github.com/stormzhang/AndroidVolley http://blog.csdn.net/t12x3456/article/details/922 ...

  3. 【修改 ruoyi-plus 项目名字很麻烦,不如来试试这个工具!开源框架修改项目名!】

    spring boot 开发中经常会用到脚手架[开源框架]修改项目名称模块的时候让人头疼且费时间!不妨来试试这个工具,超好用!!! 文章目录 spring boot 开发中经常会用到脚手架[开源框架] ...

  4. 各种Android UI开源框架 开源库

    各种Android UI开源框架 开源库 转 https://blog.csdn.net/zhangdi_gdk2016/article/details/84643668 自己总结的Android开源 ...

  5. 各种Android UI开源框架

    自己总结的Android开源项目及库. github排名 https://github.com/trending,github搜索:https://github.com/search Android库 ...

  6. Android 开源框架精选

    1. github排名 https://github.com/trending,github搜索:https://github.com/search 2.https://github.com/wasa ...

  7. 各种Android ui 开源框架

    自己总结的Android开源项目及库. github排名 https://github.com/trending,github搜索:https://github.com/search Android库 ...

  8. TimLiu-Android 开源框架集合

    TimLiu-Android 自己总结的Android开源项目及库. github排名 https://github.com/trending,github搜索:https://github.com/ ...

  9. Farseer.net轻量级ORM开源框架 V1.x 入门篇:新版本说明

    导航 目   录:Farseer.net轻量级ORM开源框架 目录 上一篇:没有了 下一篇:Farseer.net轻量级ORM开源框架 V1.x 入门篇:数据库配置 前言 V1.x版本终于到来了.本次 ...

最新文章

  1. 【边缘计算】边缘计算元年一文看懂云边协同!九大场景带来新一轮信息革命...
  2. mysql 5.6 mysqldump 简单_mysqldump的简单用法及其原理
  3. centos修改主机名整理(勿喷)
  4. python闭包的延迟绑定_浅析Python的闭包和延迟绑定
  5. Python OpenCV——函数 cv2.findContours 运行错误【in function ‘cv::pointSetBoundingRect‘】解决方案
  6. python中的ix是啥_python ix什么意思
  7. eShopOnContainers 看微服务③:Identity Service
  8. Python(1)-源起、设计目标、设计哲学、特点
  9. Java开发领域的大牛有哪些
  10. tkinter显示mysql表_Python(Tkinter)如何只显示Mysql记录而不显示列表?
  11. c#日期转换周几_RPA经验:使用 selector 选择日期
  12. 看到这一切,我忍俊不禁
  13. Eclipse报错:java.lang.ClassNotFoundException: ContextLoaderListener
  14. 具有左,中或右对齐项的Bootstrap NavBar
  15. 活得自我一点,做自己想做的事情,有意义的事情
  16. 计算机常用端口号以及对应服务总结
  17. PING 192.168.5.13 (192.168.5.13 ) 56(84) data bytes后长时间不响应
  18. 【心悟水浒】带团队懂管理
  19. SpringBoot(6)自动配置 - Condition
  20. XShell6(配置XFTP 文件传输) 安装+简单使用教程

热门文章

  1. 爬取中国空气质量在线监测分析平台
  2. 基于Python的ERP系统中主生产计划(MPS)的计算
  3. 做一只跑过灰狼的兔子
  4. linux修改SSH密码的方法
  5. 计算机中丢失dinput8,dinput8.dll_丢失dinput8.dll修复
  6. flutter图片上传
  7. Nginx代理——正向、反向代理,动静分离和负载均衡
  8. synchonized只能回答加锁?深入解析,关于锁升级流程的各项细节
  9. 计算机集成制造相关文献,计算机集成制造专著类参考文献 计算机集成制造期刊参考文献哪里找...
  10. Day17-集合(中)Map