安卓远程真机调试平台

MIT
Java
Linux,Windows
JiaXin · May 01, 2020 · 4398 次阅读 · 4 条评论

开发背景:
STF 是最早的远程真机调试平台,现在所有的远程真机调试其实都是借鉴了它的实现思想。但是 STF 的使用中存在一些不足,
1、并不能很好兼容国内各种各样的安卓定制化手机,如果你经常使用过 STF,一定遇到过 STF.APK 无法正常安装到手机或者无法正常自动启动服务的情况。
2、STF 使用 MINITOUCH 进行点击,而 MINITOUCH 基于的安卓系统的/dev/event 文件进行操作,从 android10 开始,已经不允许用户 OPEN 这个文件。所以 MINITOUCH 已经不能支持 10 版本操作系统,也就是 STF 无法支持安卓 10 以上版本手机操作。未来的安卓 11 还没有看,估计以后也将不再支持。
3、STF 使用的 RETHINKDB 这种 NOSQL 数据库,并且该软件已经不再有技术支持了,开发公司破产了。造成 STF 的数据维护非常不主流。
4、STF 使用 NODEJS 技术研发,其实也是不是很主流,维护起来也不是很好,特别需要和其他企业平台结合的时候。

基于以上的工作中遇到的困难,研发了此平台。

技术背景
1、 使用主流的 JAVA 语言,SPRING 框架,数据库数据存储使用 MYSQL,便于大多数开发者维护。
2、屏幕的获取依然采用 MINICAP,点击废弃了 MINITOUCH,使用 ADB 的点击方式,远程 ADB 调试依然采用 ADBKIT。
特点
1、可以兼容安卓 10 以上版本。
2、不需要安装 APK,启动 APK 的服务,这样避免掉一些国产手机的兼容问题。经过公司内容 300 台以上安卓真机测试,基本兼容。

开源代码地址
[https://github.com/scvjx/PhoneRemoteControlPlatform]

期望
其实除了 STF,国内很多云测厂商都有自己的远程调试平台实现,有一部分就是照搬的 STF,有一部分再 STF 的思路上二次开发。但是真正经过实践并且开源的调试平台并不多。
开源代码期望所有有需求的人可以利用代码,并且在此基础上给与我建议和意见,提高代码的质量,完善一个可靠的平台。

评论列表
Alisa 发表于 January 18, 2021

这个项目好像跑不起来呀?

匿名 发表于 January 06, 2021

怎么说呢,adb 太慢了,我开发了安卓 10 以上版本点击库,支持多点触控操作,性能跟 minitouch 差不多。

JiaXin 发表于 July 01, 2020

minitouch 支持不了安卓 10 版本,以后新的安卓系统也支持不了 所以果断放弃是正确的。既然 minitouch 不支持,那么 minitouch 背后所用的 sendevent 也不行。只有 ADB 一条路。没有别的选择。包括 STF 自身也解决不了安卓 10 以上版本的点击问题。

yca 发表于 June 17, 2020

你缺个前端,兄弟, 还有用 adb 点击,太慢了。