前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >STF科普

STF科普

作者头像
Criss@陈磊
发布2019-08-02 11:00:54
2.2K0
发布2019-08-02 11:00:54
举报
文章被收录于专栏:测试技术圈

说到远程真机控制,实际上Github上最著名的是STF工程,我们在Github(github.com)上,可以查到是有几个核心组件模块的1. openstf/minicap 主要负责截图,生成视频流2. openstf/minitouch 主要负责控制

我们分别来说一下核心工作原理

1. Minitouch的原理

我们的Android设备是可以通过adb shell命令实时看到我们的触屏信息的(命令是:adb shell -> getevent),如果您手边有Android设备的话,连接好USB,打开USB调试模式,确保使用adb devcies可以找到您的这部手机之后,您可以尝试使用adb shell进入Android的shell模式,再输入getevent -l,之后只要您操作手机屏幕,您就可以在电脑上看到类似于下面的内容(我手边目前没有Android手机,借用了https://blog.csdn.net/mcgrady_tracy/article/details/46514755这个地址的一张图,您也可以参考这个文档,了解更过关于getevent的概念),很明显的能看出来,我点击的X,Y的坐标是什么。

相对应的,有getevent,就有sendevent,我们可以使用get出来的event按照相同的顺序,时间间隔等条件,再send回去。

而这个sendevent就是minitouch的核心工作原理,我们可以看一下minitouch的源码:

2. Minicap的原理

还是看源码:

Minicap是通过访问Android设备中的graphics/fb0或者是其他的DisplayID来获取屏幕缓存的,由于是直接获取缓存,所以效率非常高。(这块可以简单了解一下这个文档:https://blog.csdn.net/a1w0n/article/details/37727971)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-07-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 质问 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档