背景
之前成功完成了 android 设备的接入,挖坑填坑也算是完全搞定 android 设备的共享。
然而,我们不能停留在 android 的领域,iOS 同样可以探索。也许这条路充满荆棘,但也阻止不了我们一颗上 “王者” 的心。
调研技术方案
调研了半天,多数是基于 WDA+ios-minicap。
不劳而获
还好社区有 iOS_remote 这个项目,个人比较崇尚拿来主义,开箱即用是不是很赞们。可惜,坑还是有的,尤其是我这种猪队友,坑上加坑。
我打辅助
iOS_remote 这个已经可以带躺了,我就打打辅助,保护 “后排”。
- ios-minicap/wda/web-app 启动冲突,那我就不需要程序启动,前期弱势,手动按顺序启动就 OK 啦。
- 字节流解析出错,那我用 ios-mincap 的 example 就可以了。
- 前端手势封装操作即 bug,那我就 “猥琐发育” dev-tools 调试了,去掉了鼠标的
style=not-allowed
,以及if=not-allowed
就returen
得代码。(一句话,省事)
- wda 的 api 调用失败,算了重新简易封装拖拽、点击,长按手势,反正编码工作量没多大。
- 一切准备就绪后,没有屏幕镜像,“gank” 百度,把 Vue 放在最前端就 ok 了。
重写 prototype
扒了一遍 iOS_remote 的后端及前端,完成了 prototype。
git 地址
我直接写在 openstf/ios-minicap 的 example 里面了。
ios 远程控制工具
接入办公室及启动顺序
- 部署 example 到服务器,分别配置 ios-minicap 的 remote_port 以及 wda 的 remote_port。
- 服务器开启 frps。
- 启动 mac 上的 minicap,启动 minicap 的 frpc。
- 启动服务器的应用。先启动获取手机屏幕镜像。
- 启动 mac 上的 wda。
- 浏览器访问。