iOS 测试 ios 远程控制工具 (站在巨人的肩膀上)

卡农Lucas · 2018年06月11日 · 最后由 小胖。 回复于 2018年10月23日 · 2962 次阅读

背景

之前成功完成了 android 设备的接入,挖坑填坑也算是完全搞定 android 设备的共享。
然而,我们不能停留在 android 的领域,iOS 同样可以探索。也许这条路充满荆棘,但也阻止不了我们一颗上 “王者” 的心。

调研技术方案

调研了半天,多数是基于 WDA+ios-minicap。

不劳而获

还好社区有 iOS_remote 这个项目,个人比较崇尚拿来主义,开箱即用是不是很赞们。可惜,坑还是有的,尤其是我这种猪队友,坑上加坑。

我打辅助

iOS_remote 这个已经可以带躺了,我就打打辅助,保护 “后排”。

  1. ios-minicap/wda/web-app 启动冲突,那我就不需要程序启动,前期弱势,手动按顺序启动就 OK 啦。
  2. 字节流解析出错,那我用 ios-mincap 的 example 就可以了。
  3. 前端手势封装操作即 bug,那我就 “猥琐发育” dev-tools 调试了,去掉了鼠标的 style=not-allowed,以及if=not-allowedreturen得代码。(一句话,省事)
  4. wda 的 api 调用失败,算了重新简易封装拖拽、点击,长按手势,反正编码工作量没多大。
  5. 一切准备就绪后,没有屏幕镜像,“gank” 百度,把 Vue 放在最前端就 ok 了。

重写 prototype

扒了一遍 iOS_remote 的后端及前端,完成了 prototype。

git 地址

我直接写在 openstf/ios-minicap 的 example 里面了。
ios 远程控制工具

接入办公室及启动顺序

  1. 部署 example 到服务器,分别配置 ios-minicap 的 remote_port 以及 wda 的 remote_port。
  2. 服务器开启 frps。
  3. 启动 mac 上的 minicap,启动 minicap 的 frpc。
  4. 启动服务器的应用。先启动获取手机屏幕镜像。
  5. 启动 mac 上的 wda。
  6. 浏览器访问。
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 11 条回复 时间 点赞

完全无耻的拷贝 iOS_remote。

卡农Lucas 回复

哈哈哈!欢迎一起完善 ios-remote 工具啊!
剩下很多坑是因为我写完这个工具之后,公司购买了足够的 iPhone,所以这个工具没有大规模推广使用了。

water 回复

浏览器手势操作聚焦问题怎么解决,有思路吗?现在点击反映在设备的误差很大。

卡农Lucas 回复

没有误差啊!你的是啥手机?
看看 iosinfo.js 上面的分辨率设置,有你的手机型号吗?

water 回复

iphone 6 p,不通浏览器的像素有差别,显示不准,retina 屏幕和 dell 显示屏还有缩放浏览器缩小了等等。

water 回复

等等哈,我试试

water 回复

devicePixelRatio=1 、1.5、2 的浏览器或显示器你有试过吗?

卡农Lucas 回复

没试过哎,还有待优化,我们准备改造 stf 了,后面可能重写到 stf 里面去。到时候请教来请教大神。

请问两位大佬,支持一台 mac 部署多台手机么

小胖。 回复

不支持。不过改一下源码,用 iproxy 做个重定向应该可以。我觉得。

卡农Lucas 回复

也就是改了之后 也只支持同一时间只能操作一台手机 对吧?操作完了可以切换手机

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册